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 は、ntext、nchar、または nvarchar の入力値を呼び出す必須のパラメーターです。 ステートメントがパラメーター化されていない場合は、NULL 値を入力します。

Stmt
カーソル結果セットを定義します。 stmt パラメーターは必須であり、ntext、ncharまたは 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;  

関連項目

sp_prepare (Transact SQL)
sp_execute (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)