Bibliothèques .NET Framework prises en charge
Avec le Common Language Runtime (CLR) hébergé dans SQL Server, vous pouvez créer des procédures stockées, des déclencheurs, des fonctions définies par l’utilisateur, des types définis par l’utilisateur et des agrégats définis par l’utilisateur dans du code managé. Avec les fonctionnalités présentes dans les bibliothèques de classes .NET Framework, vous avez accès à des classes prégénérées qui fournissent des fonctionnalités pour la manipulation de chaînes, des opérations de mathématique avancées, l'accès au fichier, le chiffrement, etc. Ces classes sont accessibles à partir de procédures stockées managées, de types définis par l'utilisateur, de déclencheurs, de fonctions définies par l'utilisateur ou d'agrégats définis par l'utilisateur, quels qu'ils soient.
Notes
Si vous gérez ou mettez à niveau des assemblys non pris en charge dans le Global Assembly Cache (GAC), votre SQL Server. Si un assembly existe à la fois dans un SQL Server intégration CLR. Si vous mettez en service ou mettez à niveau des assemblys dans le GAC qui sont également inscrits dans la base de données, y compris les assemblys .NET Framework non pris en charge, veillez également à entretenir ou mettre à niveau la copie de l’assembly dans vos bases de données SQL Server avec l’instruction ALTER ASSEMBLY
. Pour plus d’informations, consultez l’article 949080 de la Base de connaissances.
Bibliothèques prises en charge
À compter de SQL Server a une liste des bibliothèques .NET Framework prises en charge, qui ont été testées pour s’assurer qu’elles répondent aux normes de fiabilité et de sécurité pour l’interaction avec SQL Server les charge directement à partir du Global Assembly Cache (GAC).
Les bibliothèques/espaces de noms pris en charge par l’intégration du CLR dans SQL Server sont les suivants :
CustomMarshalers
Microsoft.VisualBasic
Microsoft.VisualC
mscorlib
Système
System.Configuration
System.Data
System.Data.OracleClient
System.Data.SqlXml
System.Deployment
System.Security
System.Transactions
System.Web.Services
System.Xml
System.Core.dll
System.Xml.Linq.dll
Bibliothèques non prises en charge
Il est toujours possible d'appeler des bibliothèques non prises en charge à partir de vos procédures stockées managées, déclencheurs, fonctions définies par l'utilisateur, types définis par l'utilisateur et agrégats définis par l'utilisateur. La bibliothèque non prise en charge doit d’abord être inscrite dans la base de données SQL Server, à l’aide de l’instruction CREATE ASSEMBLY
, avant de pouvoir être utilisée dans votre code. Toute bibliothèque non prise en charge qui est inscrite et exécutée sur le serveur doit être examinée et testée en termes de sécurité et de fiabilité.
Par exemple, l'espace de noms System.DirectoryServices
n'est pas pris en charge. Vous devez inscrire l'assembly System.DirectoryServices.dll avec les autorisations UNSAFE
avant de pouvoir l'appeler de votre code. L'autorisation UNSAFE
est nécessaire parce que les classes dans l'espace de noms System.DirectoryServices
ne répondent pas aux conditions requises par SAFE
ou EXTERNAL_ACCESS
. Pour plus d’informations, consultez Restrictions du modèle de programmation d’intégration CLR et Sécurité d’accès au code d’intégration DU CLR.
Voir aussi
Création d'un assembly
Sécurité d'accès du code de l'intégration du CLR
Restrictions du modèle de programmation de l'intégration du CLR