Share via


Array Parameter サンプル

更新 : 2006 年 4 月 14 日

データベース内の行のセットを作成、更新、または削除すると便利な場合があります。これを行うには、いくつかの方法があります。1 つは、共通言語ランタイム (CLR) 統合ユーザー定義データ型を使用して、情報の配列をクライアントからサーバー上の CLR 統合ストアド プロシージャへ渡す方法です。CLR 統合ユーザー定義データ型の性質によって、サーバーに提供されるデータの大きさは 8,000 バイトに制限されます。したがって、この方法は、大規模なデータや複雑なデータを扱う場合には適切ではありません。詳細については、AdventureWorks Cycles CLR レイヤ サンプルの連絡先作成ストアド プロシージャを参照してください。操作するデータが小規模で単純な場合、この方法は、行ごとにストアド プロシージャを呼び出す方法よりもはるかに効率的です。データの順序が重要なアプリケーションでは、配列を渡すことでデータの順序を保持できます。

このサンプルの内容は次のとおりです。

  1. ContactTypeNames ユーザー定義データ型。これには、目的の連絡先の型名のリストが含まれています。
  2. Microsoft Visual C# メソッドまたは Microsoft Visual Basic メソッドとして実装された usp_EnsureContactTypeNames ストアド プロシージャ。このストアド プロシージャは、ContactTypeNames ユーザー定義データ型のインスタンスを受け取り、Person.ContactType テーブルにない連絡先名がこのユーザー定義データ型インスタンスに含まれている場合、新しい行をテーブルに挿入します。
  3. TestArrayParameter コンソール アプリケーション。このアプリケーションは、渡されたコマンド ライン パラメータに基づいて ContactTypeNames ユーザー定義データ型のインスタンスを作成し、usp_EnsureContactTypeNames ストアド プロシージャを呼び出して、このユーザー定義データ型インスタンスをパラメータとして渡します。

インストール ディレクトリは、drive:\Program Files\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\ArrayParameter\ です。

シナリオ

Jane は Adventure Works Cycles の開発者です。少数の単純な行をテーブルに挿入する必要がありますが、データベースの負荷を最小にする必要があります。

言語

Transact-SQL、Visual C#、および Visual Basic。

機能

Array Parameter サンプルでは、Microsoft の次の機能を使用します。

アプリケーション エリア 機能

全体

CLR、ユーザー定義データ型、Transact-SQL

前提条件

このサンプルを実行する前に、次のソフトウェアがインストールされていることを確認してください。

  • Microsoft SQL Server 2005 または Microsoft SQL Server 2005 Express Edition (SQL Server Express)。SQL Server Express は、SQL Server 2005 Express Edition ドキュメントとサンプルの Web サイトから無償で入手できます。
  • SQL Server 2005 に付属の AdventureWorks データベース。SQL Server デベロッパー Web サイトからも入手できます。
  • SQL Server 2005 データベース エンジンのサンプル。これらのサンプルは SQL Server 2005 に含まれています。これらの最新バージョンは、SQL Server デベロッパー Web サイトからダウンロードできます。
  • .NET Framework SDK 2.0 または Microsoft Visual Studio 2005。.NET Framework SDK は無償で入手できます。詳細については、「.NET Framework SDK のインストール」を参照してください。

サンプルのビルド

強力な名前のキー ファイルをまだ作成していない場合は、次の指示に従ってキー ファイルを生成してください。

厳密な名前のキー ファイルを生成するには

  1. Microsoft Visual Studio 2005 コマンド プロンプトを開きます。[スタート] メニューの [すべてのプログラム] をポイントし、[Microsoft .NET Framework SDK 2.0] をポイントします。次に、[SDK コマンド プロンプト] をクリックします。

    -- または --

    Microsoft .NET Framework コマンド プロンプトを開きます。[スタート] メニューの [すべてのプログラム] をポイントし、[Microsoft .NET Framework SDK 2.0] をポイントします。次に、[SDK コマンド プロンプト] をクリックします。

  2. ディレクトリの移動コマンド (CD) を使用して、コマンド プロンプト ウィンドウの現在のディレクトリから、サンプルがインストールされているフォルダに移動します。

    ms160951.note(ja-jp,SQL.90).gif注 :
    サンプルが配置されているフォルダを調べるには、[スタート] ボタンをクリックし、[すべてのプログラム]、[Microsoft SQL Server]、[マニュアルとチュートリアル] の順にポイントして、[サンプル ディレクトリ] をクリックします。既定のインストール場所を使用している場合、サンプルは <system_drive>:\Program Files\Microsoft SQL Server\100\Samples にあります。
  3. コマンド プロンプトで、次のコマンドを実行してキー ファイルを生成します。

    sn -k SampleKey.snk

    ms160951.note(ja-jp,SQL.90).gif重要 :
    厳密な名前のキー ペアの詳細については、MSDN の .NET Development Center にある「Security Briefs: Strong Names and Security in the .NET Framework」を参照してください。

Array Parameter サンプルをビルドするには

  1. Visual Studio 2005 および提供されている Visual Studio ソリューションを使用するか、.NET Framework SDK 2.0 に含まれている Microsoft MSBuild を使用して、サンプルをコンパイルします。.NET Framework コマンド プロンプトで、次のようなコマンドを実行します。

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ArrayParameter.sln

  2. AdventureWorks データベースがインストールされていることを確認します。

  3. 既定の場所に SQL Server データベース エンジン サンプルをインストールしなかった場合、サンプルのインストール先が参照されるように、Scripts\InstallCS.sql スクリプトの CREATE ASSEMBLY 部のパスを変更します。

  4. 使用している SQL Server インスタンスの管理者でない場合、インストールを完了するためには、CreateAssembly 権限が管理者から許可されている必要があります。

  5. Visual C# プロジェクトと Visual Basic プロジェクトのどちらをコンパイルしたかに応じて、SQL Server Management Studio でファイル scripts\installCS.sql または scripts\installVB.sql を開きます。ファイルに含まれるスクリプトを実行するか、コマンド プロンプト ウィンドウで次のコマンドを実行します。

    sqlcmd -E -I -i Scripts\InstallCS.sql

サンプルの実行

Array Parameter サンプルを実行するには

  1. コマンド プロンプトでディレクトリ変更 (CD) コマンドを使用して、コマンド プロンプト ウィンドウの現在のフォルダを ArrayParameter サンプル ディレクトリに変更します。コマンド プロンプトで、次のコマンドを実行します。

    Scripts\TestCS.cmd

サンプルの削除

Array Parameter サンプルを削除するには

  1. Management Studio で scripts\cleanup.sql ファイルを開きます。ファイルに含まれているスクリプトを実行するか、コマンド プロンプト ウィンドウで次のコマンドを実行します。

    sqlcmd -E -I -i Scripts\cleanup.sql

コメント

このサンプルを正しく機能させるためには、SQL Server 2005 または SQL Server Express の共通言語ランタイムを有効にする必要があります。

サンプルは、演習目的で利用するためにのみ提供されています。サンプルを運用環境で使用することは想定されていないため、運用環境でのサンプルのテストは行われていません。Microsoft では、これらのサンプルに関する製品サポート サービスを提供していません。システム管理者の承認を得ることなく、サンプル アプリケーションやサンプル アセンブリを、運用中の SQL Server データベースやレポート サーバーに接続したり、これらのデータと共に使用することは避けてください。

参照

処理手順

AdventureWorks Cycles CLR レイヤ

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2005 年 12 月 5 日

変更内容 :
  • キー ファイルの名前や場所など、キー ファイルを生成する手順を変更しました。