サポートされている .NET Framework ライブラリ

SQL Serverでホストされている共通言語ランタイム (CLR) を使用すると、ストアド プロシージャ、トリガー、ユーザー定義関数、ユーザー定義型、およびユーザー定義集計をマネージ コードで作成できます。 .NET Framework クラス ライブラリに用意されている機能を使用すると、文字列操作、高度な算術演算、ファイル アクセス、暗号化などの機能を提供する組み込みのクラスにアクセスできます。 これらのクラスは、任意のマネージド ストアド プロシージャ、ユーザー定義型、トリガー、ユーザー定義関数、またはユーザー定義集計からアクセスできます。

Note

グローバル アセンブリ キャッシュ (GAC) でサポートされていないアセンブリをサービスまたはアップグレードする場合は、SQL Server。 アセンブリがSQL Server CLR 統合の両方に存在する場合。 サポートされていない.NET Framework アセンブリを含め、データベースにも登録されている GAC 内のアセンブリをサービスまたはアップグレードする場合は、 ステートメントを使用して、SQL Server データベースALTER ASSEMBLY内のアセンブリのコピーもサービスまたはアップグレードしてください。 詳細については、 サポート技術情報の記事 949080 を参照してください。

サポートされているライブラリ

SQL Server 以降では、サポートされている.NET Framework ライブラリの一覧が用意されています。このライブラリは、グローバル アセンブリ キャッシュ (GAC) から直接読み込まれるSQL Serverとの対話に関する信頼性とセキュリティ標準を満たしていることを確認するためにテストされています。

SQL Serverでの CLR 統合でサポートされるライブラリ/名前空間は次のとおりです。

  • CustomMarshalers

  • Microsoft.VisualBasic

  • Microsoft.VisualC

  • mscorlib

  • システム

  • 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

サポートされていないライブラリ

サポートされていないライブラリは、マネージド ストアド プロシージャ、トリガー、ユーザー定義関数、ユーザー定義型、およびユーザー定義集計から呼び出すことができます。 サポートされていないライブラリは、コードで使用する前に、 ステートメントを使用してCREATE ASSEMBLY、まずSQL Server データベースに登録する必要があります。 サポートされていないライブラリをサーバーに登録して実行する場合は、そのライブラリのセキュリティと信頼性を確認およびテストする必要があります。

たとえば、System.DirectoryServices 名前空間はサポートされていません。 System.DirectoryServices.dll アセンブリをコードから呼び出す前に、このアセンブリを UNSAFE 権限で登録する必要があります。 UNSAFE 名前空間内のクラスは System.DirectoryServices または SAFE の要件を満たさないため、EXTERNAL_ACCESS 権限が必要になります。 詳細については、「 CLR 統合プログラミング モデルの制限 」および「 CLR 統合コード アクセス セキュリティ」を参照してください。

参照

アセンブリの作成
CLR 統合のコード アクセス セキュリティ
CLR 統合プログラミング モデルの制限事項