Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les assemblys inscrits dans SQL Server peuvent être mis à jour à partir d’une version plus récente à l’aide de l’instruction ALTER ASSEMBLY. Pour mettre à jour un assembly, utilisez l’instruction ALTER ASSEMBLY avec la syntaxe suivante :
ALTER ASSEMBLY SQLCLRTest
FROM 'C:\MyDBApp\SQLCLRTest.dll'
ALTER ASSEMBLY n’interrompt pas les processus en cours d’exécution qui utilisent l’assembly ; les processus continuent à s’exécuter avec l’assembly non inchangé. ALTER ASSEMBLY ne peut pas être utilisé pour modifier les signatures des fonctions CLR (Common Language Runtime), les fonctions d’agrégation, les procédures stockées et les déclencheurs. De nouvelles méthodes publiques peuvent être ajoutées à l’assembly, les méthodes privées peuvent être modifiées de quelque manière que ce soit, et les méthodes publiques peuvent être modifiées tant que les signatures ou les attributs ne sont pas modifiés. Les champs contenus dans un type défini par l’utilisateur sérialisé natif, y compris les membres de données ou les classes de base, ne peuvent pas être modifiés à l’aide de ALTER ASSEMBLY. Aucune autre modification n'est prise en charge. Pour plus d’informations, consultez ALTER ASSEMBLY (Transact-SQL).
Modification du jeu d’autorisations d’un assembly
Le jeu d’autorisations d’un assembly peut également être modifié à l’aide de l’instruction ALTER ASSEMBLY. L’instruction suivante modifie le jeu d’autorisations de l’assembly SQLCLRTest sur EXTERNAL_ACCESS.
ALTER ASSEMBLY SQLCLRTest
WITH PERMISSION_SET = EXTERNAL_ACCESS
Si le jeu d’autorisations d’un assembly est modifié de SAFE à EXTERNAL_ACCESS ou UNSAFE, une clé asymétrique et une connexion correspondante avec EXTERNAL ACCESS ASSEMBLY autorisation ou UNSAFE ASSEMBLY autorisation pour l’assembly doivent d’abord être créées. Pour plus d'informations, consultez Création d’un assembly.
Ajout du code source d’un assembly
La clause ADD FILE dans la syntaxe ALTER ASSEMBLY n’est pas présente dans CREATE ASSEMBLY. Vous pouvez l'utiliser pour ajouter le code source ou tout autre fichier associé à un assembly. Les fichiers sont copiés depuis leur emplacement d'origine et stockés dans les tables système de la base de données. Le code source et autres fichiers est toujours à portée de main dans l'éventualité où vous deviez recréer ou documenter la version actuelle de l'UDT.
L’instruction suivante ajoute le code source de la classe Point.cs pour le point UDT. Copie le texte contenu dans le fichier Point.cs et le stocke dans la base de données sous le nom « PointSource ».
ALTER ASSEMBLY Point
ADD FILE FROM 'C:\Projects\Point\Point.cs' AS PointSource
Voir aussi
Gestion des assemblys d’intégration CLR
Création d’un assembly
Suppression d’un assembly
ALTER ASSEMBLY (Transact-SQL)