次の方法で共有


Hello World Ready サンプル

更新 : 2005 年 12 月 5 日

Hello World Ready サンプルでは、国際化対応の、CLR (共通言語ランタイム) 統合ベースの単純なストアド プロシージャの作成、展開、およびテストにかかわる基本的な操作を示しています。国際化対応コンポーネントは、コンポーネントのソース コードを変更することなく、世界中の市場に向けて、異なる言語へのローカライズを簡単に行うことができます。また、このサンプルでは、出力パラメータを使用してデータを返す方法、およびストアド プロシージャによって動的に構築されてクライアントに返されるレコードを使用してデータを返す方法についても示します。

このサンプルは、このアプリケーションのローカライズをより簡単かつ安全に行える点を除き、Hello World サンプルとほぼ同じです。ローカライズ済みテキストを変更するには、次の作業を実行する必要があります。

  1. リソース ディレクトリの特定のカルチャに合わせた XML ファイル (.resx ファイル) を変更します。
  2. resgen を使用して、カルチャに応じたリソース ファイルをビルドします。
  3. そのカルチャに関して更新されたサテライト DLL をビルドします。
  4. このアセンブリを SQL Server でいったん削除してから、追加します。

CLR ストアド プロシージャ自体のソース コードおよびアセンブリは変更されません。build.cmd スクリプトは、リソース アセンブリのコンパイル方法とリンク方法を示すリソース ディレクトリに提供されています。

アプリケーションのソース コードによって、現在実行しているアセンブリに基づいたリソース マネージャが作成されますが、ストアド プロシージャを含む DLL にカルチャ ニュートラル リソースを埋め込む必要はありません。AssemblyInfo.cs ファイルまたは AssemblyInfo.vb ファイルで使用される System.Resources.NeutralResourcesLanguage 属性によって、カルチャ ニュートラル リソースがサテライト DLL に存在することが許可されます。この目的でそれぞれ別の DLL を使用すると、ローカライズ済みテキストの追加や変更が必要な場合でも、CLR ストアド プロシージャを含んでいるプライマリ DLL の変更が必要なくなるため非常に便利です。これは、型の削除と再追加を困難にするような列やその他の依存関係を含んでいることのある、CLR ユーザー定義型には特に役立ちます。

通常、サテライト DLL バージョンはメイン アセンブリ バージョンと同じである必要があります。ただし、SatelliteContractVersion 属性を使用して、サテライト アセンブリを更新せずにメイン アセンブリの更新を許可することもできます。詳細については、Microsoft .NET Framework Version 2.0 SDK ドキュメントの ResourceManager クラスを参照してください。

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

シナリオ

Jane は Adventure Works Cycles の開発者です。CLR 統合ストアド プロシージャの使用に関する基本を理解する必要があります。また、所属するチームで使用するテクニックとなるリソースを使用して、国際化対応の CLR 統合ストアド プロシージャをどのように開発するかについても理解する必要があります。

言語

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

機能

Hello World Ready サンプルは、SQL Server の次の機能を使用します。

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

全体

CLR、メタデータ

ローカライズ

リソース

前提条件

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

  • 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) を使用して、コマンド プロンプト ウィンドウの現在のディレクトリから、サンプルがインストールされているフォルダに移動します。

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

    sn -k SampleKey.snk

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

Hello World Ready サンプルをビルドするには

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

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

  2. .NET Framework または Visual Studio のコマンド プロンプトで、リソース ディレクトリにある指定された build.cmd ファイルを実行して、サテライト アセンブリをコンパイルします。このファイルは、Visual Studio または .NET Framework SDK に含まれている resgen を呼び出します。

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

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

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

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

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

サンプルの実行

Hello World Ready サンプルを実行するには

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

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

サンプルの削除

Hello World Ready サンプルを削除するには

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

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

コメント

このサンプルを正しく機能させるためには、SQL Server 2005 または SQL Server Express の CLR を有効にする必要があります。

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

参照

処理手順

Hello World サンプル
カレンダー対応の日付/時刻 UDT

その他の技術情報

CREATE ASSEMBLY (Transact-SQL)
DROP ASSEMBLY (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)
DROP PROCEDURE (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2005 年 12 月 5 日

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