Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Sammansättningar som är registrerade i SQL Server kan uppdateras från en nyare version med hjälp av ALTER ASSEMBLY-instruktionen. Om du vill uppdatera en sammansättning använder du instruktionen ALTER ASSEMBLY med följande syntax:
ALTER ASSEMBLY SQLCLRTest
FROM 'C:\MyDBApp\SQLCLRTest.dll';
ALTER ASSEMBLY stör inte pågående processer som använder sammansättningen. processerna fortsätter att köras med den oförändrade sammansättningen.
ALTER ASSEMBLY kan inte användas för att ändra signaturer för CLR-funktioner (Common Language Runtime), aggregerade funktioner, lagrade procedurer och utlösare. Du kan lägga till nya offentliga metoder i sammansättningen, privata metoder kan ändras på alla sätt och offentliga metoder kan ändras så länge signaturer eller attribut inte ändras. Fält som finns i en inbyggt serialiserad användardefinierad typ, inklusive datamedlemmar eller basklasser, kan inte ändras med hjälp av ALTER ASSEMBLY. Alla andra ändringar stöds inte. Mer information finns i ALTER ASSEMBLY.
Ändra behörighetsuppsättningen för en sammansättning
Behörighetsuppsättningen för en sammansättning kan också ändras med hjälp av instruktionen ALTER ASSEMBLY. Följande instruktion ändrar behörighetsuppsättningen för SQLCLRTest-sammansättningen till EXTERNAL_ACCESS.
ALTER ASSEMBLY SQLCLRTest
WITH PERMISSION_SET = EXTERNAL_ACCESS;
Om behörighetsuppsättningen för en sammansättning ändras från SAFE till EXTERNAL_ACCESS eller UNSAFEmåste en asymmetrisk nyckel och motsvarande inloggning med EXTERNAL ACCESS ASSEMBLY behörighet eller UNSAFE ASSEMBLY behörighet för sammansättningen först skapas. Mer information finns i Skapa en sammansättning.
Lägg till källkoden för en sammansättning
Satsen ADD FILE i ALTER ASSEMBLY-syntaxen finns inte i CREATE ASSEMBLY. Du kan använda den för att lägga till källkod eller andra filer som är associerade med en sammansättning. Filerna kopieras från sina ursprungliga platser och lagras i systemtabeller i databasen. På så sätt har du alltid källkod eller andra filer till hands om du behöver återskapa eller dokumentera den aktuella versionen av den användardefinierade typen (UDT).
Följande instruktion lägger till Point.cs-klassens källkod för Point UDT. Den kopierar texten i filen Point.cs och lagrar den i databasen under namnet PointSource.
ALTER ASSEMBLY Point
ADD FILE FROM 'C:\Projects\Point\Point.cs' AS PointSource;