データベースのロケーションに保管されているプロシージャーを呼び出します。 データベース・アプリケーション・リモート・インターフェース (DARI) とも呼ばれます。 サーバー・プロシージャーがデータベースのロケーションで実行され、 データをクライアント・アプリケーションに返します。
アプリケーション・プログラマーは、プログラムが 2 つの部分で実行されるよう、 つまり一方はクライアント上、他方はサーバー上で実行されるように設計します。 データベースにおけるサーバー・プロシージャーは、 クライアント・アプリケーションと同一のトランザクション内で実行されます。 クライアント・アプリケーションとサーバー・プロシージャーが同一のノード上にある場合、 サーバー・プロシージャーはローカルに実行されます。
注: | このコマンドは、 SQL CALL ステートメントによって置き換えられています (SQL 解説書 を参照)。 カタログ化されたストアード・プロシージャーに対する CLP 内の CALL もサポートされています。 |
許可
データベースに対する CONNECT 特権。
必須接続
データベース
>>-INVOKE--program-name----+---------------------------+------->< '-USING--server-input-data--'
注: | INVOKE を使って、入力または出力 SQLDA 構造を使用するサーバー・プロシージャーや、 データを返すサーバー・プロシージャーを呼び出すことはしないでください。 詳しくは、アプリケーション開発の手引き を参照してください。 |
コマンド・パラメーター
db2 invoke foo
の場合、FOO という名前の DARI ライブラリーがロードされ、 そのライブラリー内の機能ルーチン FOO() が実行されます。
データベース・マネージャーは、インスタンス所有者の省略時ディレクトリー $HOME/sqllib/function の中から DARI ライブラリーを検索します。
注: | DB2 プロダクトのさまざまなバージョンの間の移行性サポートのために、 ! 区切り文字は円記号 (\) で置き換えることができます。 |