DB2 LUW を使用して COBOL ストアド プロシージャをコンパイルおよびリンクするには、次の手順を実行します。
Windows プラットフォームの場合:
- ストアド プロシージャとして使用するプログラムを Enterprise Developer プロジェクトに追加します。
- プロジェクトのプロパティを次のように設定します。
- プログラムに $SET DB2(DB) 文が含まれていない場合は、[SQL プリプロセッサ] ページの [プリプロセッサ タイプ] フィールドで [HCO for DB2 LUW] オプションを選択して、この指令を設定します。
- 64 ビットの DB2 LUW がインストールされているものの、32 ビット アプリケーションをビルドする場合は、プロジェクトのプロパティを更新して、DB2 のインストールに含まれている 32 ビット版の db2api.lib ファイルの完全修飾パスおよびファイル名を指定する必要があります。これを行うには、プロジェクトのプロパティを開いて、[Micro Focus > Build Configuration > Link] を展開し、[Additional Link Files] をクリックして、[Additional items to be linked] フィールドにパスおよびファイル名を追加します。
- プロジェクトをビルドします。
- コマンド プロンプトまたはエクスプローラーを使用して、生成された .dll ファイルを、その出力場所 (デフォルトは projectpath\bin\x86\Debug) から DB2 インストール ディレクトリの SQLLIB\FUNCTION サブディレクトリにコピーします。
注: プログラムにストアド プロシージャの CALL 文が含まれている場合は、CALL_RESOLUTION DB2 指令を指定して、SQL0204 エラーを回避する必要があります。
UNIX プラットフォームの場合:
- IBM DB2 LUW のマニュアルの「Building COBOL routines」のトピックでお使いのプラットフォーム向けに指定されているとおりに、ストアド プロシージャをコンパイルおよびリンクします。
- ストアド プロシージャ オブジェクトを DB2 インスタンスの sqllib/function ディレクトリにコピーします。
すべてのプラットフォーム:
重要: デフォルトで、ストアド プロシージャを呼び出した後、DB2 LUW は停止するまでストアド プロシージャをアンロードしません。本番環境になければ、ファイルのコピーに関する問題を避けるために次のいずれかの手順を使用できます。