前の演習では、ワークベンチからストアード・プロシージャーをデプロイしました。
ストアード・プロシージャーは、ファイル・システム上にエクスポートしたスクリプトからもデプロイできます。
ファイル・システムからストアード・プロシージャーをデプロイするためには、2 つのステップが必要です。
ストアード・プロシージャーの作成が完了したら、それをファイル・システム上にスクリプトとしてエクスポートします。
そのようにしておくなら、製品とは別のファイル・システムからでも、エクスポート済みのスクリプトを実行して、ローカル・データベースまたはリモート・サーバーにストアード・プロシージャーをデプロイすることができます。
このチュートリアルでは、エクスポート済みのスクリプトをローカル・システムで実行し、ストアード・プロシージャーをローカルの SAMPLE データベースにデプロイします。
さらに標準的なシナリオでは、ローカル・テスト・データベース上でストアード・プロシージャーをビルドして、そのプロシージャーを実動データベースにデプロイすることもできます。
このチュートリアルでは、エクスポート・スクリプトの中に DROP PROCEDURE ステートメントを作成します。
これにより、前にローカル SAMPLE データベースにデプロイしたバージョンは、エクスポート・スクリプトの CREATE PROCEDURE ステートメントが実行される前にドロップされます。
ファイル・システムからストアード・プロシージャーをエクスポートしてデプロイするには、次のようにします。
- ストアード・プロシージャーをスクリプトにエクスポートします。
- SPDevelopment プロジェクトの下の Stored Procedures フォルダーを右クリックして、「エクスポート」を選択します。 「ルーチンのエクスポート」ウィザードが開きます。
- 「選択」ページで、SPEmployee ストアード・プロシージャーをクリックして、「次へ」をクリックします。
- 「ターゲットおよびオプション」ページで、「ファイル名」フィールドに spemployee_export と入力してスクリプトに名前を付けます。
- 「ディレクトリー」フィールドで、ファイル・システム上でのスクリプトの位置を選択します。
- 「DROP ステートメントの組み込み」を選択します。 このオプションで、エクスポート・スクリプト内に DROP PROCEDURE ステートメントが生成されます。
このアクションにより、以前にデプロイしたストアード・プロシージャーのバージョンがドロップされます。
- 「次へ」をクリックして、「サマリー」ページに設定値を表示させ、次に「終了」をクリックします。
「データ出力」ビューでエクスポートの進行状況を表示してください。
エクスポート・アクションが完了したら、ファイル・システム上に作成されたスクリプトが表示されます。
この場合、スクリプトは SQL ファイルです。
場合により、エクスポートするストアード・プロシージャーまたはターゲット・データベースのタイプに応じて、スクリプトが XML ファイルであることもあります。
- ストアード・プロシージャーをファイルシステムから SAMPLE データベースにデプロイします。 これで、エクスポート・スクリプトを実行して、
ストアード・プロシージャーをデータベースにデプロイできます。
ここでは、チュートリアルのシナリオを単純化するために、ストアード・プロシージャーを SAMPLE データベースにデプロイします。
ただし、データベースのバージョンが、
ストアード・プロシージャーの作成に使用したデータベースと互換性がある限り、
それを別のデータベースにデプロイすることもできます。
例えば、DB2 for Linux, UNIX, and Windows データベースを別の DB2 for Linux、UNIX、および Windows データベースにデプロイすることは可能ですが、同じストアード・プロシージャーを DB2 UDB for z/OS データベースにデプロイすることはできません。
- DB2 コマンド・ウィンドウを開きます。
- 次のコマンドを実行します: db2 CONNECT TO SAMPLE
- 次のコマンドを実行します: db2 -td@ -vf location\spemployee_export.sql
- 次のコマンドを実行します: db2 DISCONNECT SAMPLE
ストアード・プロシージャーがデータベースにデプロイされます。
このストアード・プロシージャーが Java ストアード・プロシージャーである場合は、DeployInstructions.txt にある指示に従ってデプロイすることになります。
このファイルは、エクスポート・スクリプトの保存場所と同じファイル・システムのディレクトリーに保存されています。