SQL 構文リファレンス : EXECUTE
 
このページをシェアする                  
EXECUTE
EXECUTE ステートメントには 2 とおりの使い方があります。
ユーザー定義のプロシージャまたはシステム ストアド プロシージャを呼び出す場合。CALL ステートメントの代わりに EXECUTE ステートメントを使用できます。
ストアド プロシージャ内で、文字列または、文字列を返す式を実行する場合。
構文
ストアド プロシージャを呼び出す場合:
EXEC[UTE] ストアド プロシージャ [([プロシージャ パラメーター[, プロシージャ パラメーター]...])]
 
ストアド プロシージャ ::= ストアド プロシージャの名前
 
プロシージャ パラメーター ::= ストアド プロシージャが必要とする入力パラメーター
 
ユーザー定義のストアド プロシージャ内の場合:
EXEC[UTE] (文字列[ + 文字列]...)
 
文字列 ::= 文字列、文字列変数、または文字列を返す式
備考
ストアド プロシージャ構文の EXEC[UTE] (文字列...) は、NCHAR 値のリテラルおよび変数をサポートしていません。文字列の構築に使用される値は、実行前に CHAR 値へ変換されます。
次の例では、パラメーターのないプロシージャを実行します。
EXEC NoParms() または CALL NoParms
次の例では、パラメーターのあるプロシージャを実行します。
EXEC Parms(vParm1, vParm2)
EXECUTE CheckMax(N.Class_ID)
============ 
次のプロシージャは、Billing テーブルから Student_ID を取り出します。
CREATE PROCEDURE tmpProc(IN :vTable CHAR(25)) RETURNS (sID INTEGER) AS
BEGIN
  EXEC ('SELECT Student_ID FROM ' + :vtable);
END;
EXECUTE tmpProc('Billing')
関連項目
CALL
CREATE PROCEDURE
システム ストアド プロシージャ