>>--EXEC SQL--.--------------------.--.----------------.-> +-FOR :host_integer--+ +- :result_hvar -+ >---CALL stored_procedure_name-.------------.-END-EXEC->< | +-- , --+ | | V | | +(parameter)-+
>>--EXEC SQL---CALL function_name (parm_list)---> >---INTO---:result_hvar---END-EXEC-><
host_integer | 処理されるホスト配列要素の最大数を指定するホスト変数。PIC S9(4) COMP-5 または PIC S9(9) COMP-5 として宣言する必要があります。 | |
result_hvar | プロシージャまたは関数の結果を受け取るホスト変数。 | |
stored_procedure_name | ストアド プロシージャの名前。 | |
parameter | 次の形式のリテラル、DECLARE CURSOR 文1、またはホスト変数パラメーター。[keyword=]:param_hvar [IN | INPUT | INOUT | OUT | OUTPUT] 各要素を次に示します。 |
|
keyword2 | キーワード パラメーターの正式なパラメーター名。キーワード パラメーターは、読みやすさという点で有用であり、サーバーがデフォルトのパラメーター値とオプションのパラメーターをサポートしている場合にも役に立ちます。 | |
param_hvar | ホスト変数。 | |
IN | 入力パラメーター。 | |
INPUT | 入力パラメーター (デフォルト値)。 | |
INOUT | 入力/出力パラメーター。 | |
OUT | 出力パラメーター。 | |
OUTPUT | 出力パラメーター。 | |
function_name | *ProCOBOL データベース関数。 | |
1 DECLARE CURSOR を指定するのは、Oracle 8 以降で、結果セットを返すストアド プロシージャに対してのみです。DECLARE CURSOR を使用すると、対応するパラメーターのバインドが解除されます。 2 HCOSS はキーワード パラメーターをサポートしていません。 |
CALL が DECLARE CURSOR 文の一部である場合は、FOR 句を使用しないでください。
EXEC SQL CALL myProc(param1,param2) END-EXEC
EXEC SQL CALL myProc (namedParam=:paramValue) END-EXEC
EXEC SQL :myResult = CALL myFunction(namedParam=:paramValue) END-EXEC
EXEC SQL CALL getDept(:empName IN, :deptName OUT) END-EXEC
EXEC SQL DECLARE cities CURSOR FOR CALL locateStores(:userState) END-EXEC