ストアド プロシージャを呼び出す方法 (ODBC)
新規 : 2006 年 4 月 14 日
SQL ステートメントで ODBC CALL エスケープ句を使用してストアド プロシージャを呼び出すと、Microsoft® SQL Server™ ドライバは、リモート ストアド プロシージャ コール (RPC) メカニズムを使用して、プロシージャを SQL Server に送信します。RPC 要求は、SQL Server でのステートメント解析やパラメータ処理の多くを省略するため、Transact-SQL の EXECUTE ステートメントを使用するよりも高速です。
プロシージャを RPC として実行するには
ODBC CALL エスケープ シーケンスを使用する SQL ステートメントを作成します。このステートメントでは、各入力、入出力、出力パラメータ、およびプロシージャの戻り値 (存在する場合) に対してパラメータ マーカーを使用します。
{? = CALL procname (?,?)}
各入力、入出力、出力パラメータ、およびプロシージャの戻り値 (存在する場合) に対して SQLBindParameter を呼び出します。
SQLExecDirect を使用してステートメントを実行します。
メモ : |
---|
アプリケーションでプロシージャの送信に (ODBC CALL エスケープ シーケンスではなく) Transact-SQL の EXECUTE 構文を使用した場合、プロシージャ コールは、SQL Server ODBC ドライバから SQL Server に、RPC ではなく SQL ステートメントとして渡されます。また、Transact-SQL の EXECUTE ステートメントを使用した場合、出力パラメータは返されません。 |
参照
概念
ストアド プロシージャ呼び出しのバッチ化
ストアド プロシージャの実行
ストアド プロシージャの呼び出し
プロシージャ