OPENQUERYの結果を変数に入れる
OPENQUERYの結果を変数に入れるには、次のようにOUTPUTを付けた変数を定義し、それに渡します。
declare @rowcnt int; set @sqlwk = 'select @rowcnt = count(*) from openquery(edpsrd, '' select 契約番号 from mine.dbo.契約テーブル where 契約番号 = ''''' + @契約番号 + '''''' + ''')'; EXEC sp_executesql @sqlwk, N'@rowcnt int output', @rowcnt output;
outputはoutと省略することもできます。
次のエラーが出たら、outputを付けるのを忘れています。
「仮パラメーター "XXX" は OUTPUT パラメーターとして宣言されませんでしたが、実パラメーターによって要求された出力に渡されました。」