Freigeben über


Unterstützte .NET Framework-Bibliotheken

Mit der in SQL Server gehosteten Common Language Runtime (CLR) können Sie gespeicherte Prozeduren, Trigger, benutzerdefinierte Funktionen, benutzerdefinierte Typen und benutzerdefinierte Aggregate in verwaltetem Code erstellen. Mit der Funktionalität in den .NET Framework-Klassenbibliotheken haben Sie Zugriff auf vordefinierte Klassen, die Funktionen für die Zeichenfolgenmanipulation, erweiterte mathematische Vorgänge, Dateizugriff, Kryptografie und vieles mehr bieten. Auf diese Klassen können Sie von jeder verwalteten gespeicherten Prozedur, jedem benutzerdefinierten Typ, jedem Trigger, jeder benutzerdefinierten Funktion oder jedem benutzerdefinierten Aggregat aus zugreifen.

Hinweis

Wenn Sie nicht unterstützte Assemblys im globalen Assemblycache (GAC) diensten oder aktualisieren, verwenden Sie SQL Server. Wenn in einer SQL Server CLR-Integration eine Assembly vorhanden ist. Wenn Sie Assemblys im GAC diensten oder aktualisieren, die auch in der Datenbank registriert sind, einschließlich nicht unterstützter .NET Framework-Assemblys, stellen Sie sicher, dass Sie auch die Kopie der Assembly in Ihren SQL Server-Datenbanken mit der ALTER ASSEMBLY-Anweisung warten oder aktualisieren. Weitere Informationen finden Sie im Knowledge Base-Artikel 949080.

Unterstützte Bibliotheken

Beginnend mit SQL Server gibt es eine Liste der unterstützten .NET Framework-Bibliotheken, die getestet wurden, um sicherzustellen, dass sie Zuverlässigkeit und Sicherheitsstandards für die Interaktion mit SQL Server erfüllen, die sie direkt aus dem globalen Assemblycache (GAC) laden.

Die Bibliotheken/Namespaces, die von der CLR-Integration in SQL Server unterstützt werden, sind:

  • CustomMarshalers

  • Microsoft.VisualBasic

  • Microsoft.VisualC

  • mscorlib

  • System

  • 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

Nicht unterstützte Bibliotheken

Nicht unterstützte Bibliotheken können Sie nach wie vor von Ihren verwalteten gespeicherten Prozeduren, Triggern, benutzerdefinierten Funktionen, benutzerdefinierten Typen (User-Defined Types, UDT) und benutzerdefinierten Aggregaten aus aufrufen. Die nicht unterstützte Bibliothek muss zuerst in der SQL Server-Datenbank mit der CREATE ASSEMBLY-Anweisung registriert werden, bevor sie in Ihrem Code verwendet werden kann. Alle nicht unterstützten Bibliotheken, die registriert und auf dem Server ausgeführt werden, sollten überprüft und auf Sicherheit und Zuverlässigkeit getestet werden.

Der Namespace wird beispielsweise System.DirectoryServices nicht unterstützt. Sie müssen die System.DirectoryServices.dll-Assembly mit UNSAFE Berechtigungen registrieren, bevor Sie sie aus Ihrem Code aufrufen können. Die UNSAFE Berechtigung ist erforderlich, da Klassen im System.DirectoryServices Namespace die Anforderungen für SAFE oder EXTERNAL_ACCESS. Weitere Informationen finden Sie unter CLR-Integrationsprogrammiermodelleinschränkungen und CLR-Integrationscodezugriffssicherheit.

Siehe auch

Erstellen einer Assembly
CLR-Integrationscodezugriffssicherheit
Einschränkungen des CLR-Integrationsprogrammierungsmodells