方法: SQL CLR データベース プロジェクト項目を SQL Server に配置する
SQL Server 共通言語ランタイム (SQL CLR) データベース プロジェクトをビルドしたら、データベースに配置できるアセンブリにコンパイルします。 SQL CLR オブジェクトをデバッグする場合、関連するシンボル ファイル (.pdb) も配置する必要があります。
注意
ビルド、配置、およびデバッグの 3 つの別個の手順を実行する代わりに、[開始] コマンド (F5 キー) を使用してアセンブリをビルドし、データベースに配置して、データベース オブジェクトをデバッグできます。 アセンブリをビルドし、データベースに配置するには、[デバッグなしで開始] コマンド (Ctrl + F5 キー) を使用します。
XML シリアライザー アセンブリを必要とする SQL CLR データベース プロジェクトを配置する場合、SQL CLR データベース プロジェクトを配置するときにアセンブリを作成するようにプロジェクトを構成する必要があります。 詳細については、「方法: SQL Server 共通言語ランタイム統合機能を使用するデータ オブジェクトのプロジェクトを作成する」を参照してください。
重要
新しい SQL CLR アセンブリまたは更新された SQL CLR アセンブリをターゲット データベースに配置するための適切なアクセス許可が必要です。 詳細については、「Visual Studio のデータベース機能に必要なアクセス許可」を参照してください。
プロジェクトを構成し、シンボルを配置してデバッグを有効にするには
ソリューション エクスプローラーで、構成する SQL CLR データベース プロジェクトを右クリックし、[プロパティ] をクリックします。
[配置] タブをクリックします。
[コードの配置] チェック ボックスをオンにします。
注意
既定では、[コードの配置] はオンになります。アセンブリを配置するときに、シンボルが配置されます。
[ファイル] メニューの [選択されたファイルを上書き保存] をクリックします。
SQL Server に SQL Server のプロジェクト項目を配置するには
[ビルド] メニューの [<project name> のビルド] をクリックして、プロジェクトをビルドします。
注意
配置前にすべてのビルド エラーを解決します。
[ビルド] メニューの [<project name> の配置] をクリックします。
プロジェクトを配置できないことを示すメッセージが表示された場合、手動でサーバー上にアセンブリを作成する必要があります。 このエラーは、通常、プロジェクト内で参照されているアセンブリが原因です。 アセンブリを手動配置する方法の詳細については、Microsoft Web サイトの「CREATE ASSEMBLY (Transact-SQL)」を参照してください。
重要
2.0、3.0、または 3.5 バージョンの .NET Framework でビルドした SQL Server プロジェクトをサポートするのは、SQL Server 2005 および SQL Server 2008 のみです。 展開すると、SQL ServerプロジェクトSQL Server 2005またはSQL Server 2008、エラーが表示されます。Deploy error (SQL01268): .NET SqlClient Data Provider: Msg 6218, Level 16, State 3, Line 1 CREATE ASSEMBLY for assembly 'AssemblyName' failed because assembly 'AssemblyName' failed verification. Check if the referenced assemblies are up-to-date and trusted (for external_access or unsafe) to execute in the database(ここでAssemblyNameは、展開するアセンブリの名前です)。 詳細については、「方法: SQL Server 共通言語ランタイム統合機能を使用するデータ オブジェクトのプロジェクトを作成する」を参照してください。
次の手順
SQL CLR オブジェクトをデータベースに配置したら、その項目を実行してテストできます。
配置したデータベース項目をテストするには
SQL CLR オブジェクトをターゲット データベースに配置した後、次のいずれかの方法を選択して SQL CLR オブジェクトをデバッグします。
プロジェクト内の Test.sql スクリプトを使用して、SQL CLR オブジェクトをデバッグします。 詳細については、「方法: Test.sql スクリプトを編集して SQL Server 共通言語ランタイム統合機能を使用するオブジェクトを実行する」を参照してください。
SQL Server でクエリから項目を呼び出して実行します。 たとえば、ストアド プロシージャを配置した場合、EXEC <StoredProcedureName> を呼び出して、必要なパラメーターをすべて渡すことで実行します。 詳細については、「方法 : ストアド プロシージャおよびユーザー定義関数を実行する」を参照してください。
参照
処理手順
方法: SQL Server 共通言語ランタイム統合機能を使用するデータ オブジェクトのプロジェクトを作成する
方法: 共通言語ランタイム統合機能を使用して SQL Server ストアド プロシージャを作成および実行する
方法: 共通言語ランタイム統合機能を使用して SQL Server のトリガーを作成および実行する
方法: 共通言語ランタイム統合機能を使用して SQL Server の集計を作成および実行する
方法: 共通言語ランタイム統合機能を使用して SQL Server のユーザー定義関数を作成および実行する
方法: 共通言語ランタイム統合機能を使用して SQL Server のユーザー定義型を作成および実行する
チュートリアル : マネージ コードでのストアド プロシージャの作成
方法 : SQL CLR のストアド プロシージャをデバッグする
参照
SQL CLR データベース プロジェクトおよびデータベース オブジェクトの属性
概念
SQL Server の CLR 統合の概要 (ADO.NET)
マネージ コードを使用したデータベース オブジェクトの作成の利点