sp_prepexec (Transact-SQL)

適用対象: SQL Server

パラメーター化された Transact-SQL ステートメントを準備して実行します。 sp_prepexec は、 sp_prepare の関数と sp_execute. このアクションは、表形式データ ストリーム (TDS) パケット内の ID = 13 によって呼び出されます。

Transact-SQL 構文表記規則

構文

sp_prepexec handle OUTPUT , params , stmt
    [ , bound param ] [ , ...n ]
[ ; ]

引数

ハンドル

SQL Server によって生成された ハンドル 識別子。 handle は、 int 戻り値を持つ必須のパラメーターです。

params

パラメーター化されたステートメントを指定します。 パラメーター変数の定義は、ステートメント内のパラメーター マーカーに置き換えます。 params は、 ntextnchar、または nvarchar 入力値を呼び出す必須のパラメーターです。 ステートメントがパラメーター化されていない場合は、 NULL 値を入力します。

stmt

カーソル結果セットを定義します。 stmt パラメーターが必要であり、ntextnchar、または nvarchar 入力値を呼び出します。

bound_param

追加パラメーターの省略可能な使用を示します。 bound_param 、任意のデータ型の入力値を呼び出して、使用中の追加のパラメーターを指定します。

次の例では、単純なステートメントを準備して実行します。

Declare @Out int;
EXEC sp_prepexec @Out output,
    N'@P1 nvarchar(128), @P2 nvarchar(100)',
    N'SELECT database_id, name
      FROM sys.databases
      WHERE name=@P1 AND state_desc = @P2',
          @P1 = 'tempdb', @P2 = 'ONLINE';
EXEC sp_unprepare @Out;