2011-12-16 17 views
15

SQL Serverストアドプロシージャがあります。ストアドプロシージャから戻り値を取得する必要があります。これはこれを行う正しい方法ですか?この場合SQL Serverストアドプロシージャのキャプチャ戻り値T-SQL

declare valback varchar(30) 
    set valback = exec storeproc1 

storeproc1は私のストアドプロシージャです。

+1

変数であることを示すには、 '@ valback'を使用する必要があります。 – JNK

+0

SPに検索しようとしているOUTPUTパラメータがありますか、SPは成功したかどうかを確認するだけの挿入、更新、または削除を実行していますか? –

答えて

33

適切なT-SQLの構文を使用し、起動するには:

declare @valback int; 
exec @valback = storeproc1; 

だけのリターンストアドプロシージャに許可される型はintです。ストアドプロシージャは、returnステートメントを介してステータスを返します。

私は何とかあなたが本当にすなわち、他の何かをしたい気持ちがあります。 手順でOUTPUT parameterを持っている:

declare @valback varchar(30); 
exec storedproc1 @valback OUTPUT; 

またはINSERT ... EXECを介して設定されたプロシージャの結果をキャプチャします。 How to Share Data Between Stored Proceduresを参照してください。

関連する問題