update現在、 SQL Serverでを実行しようとしています(ただし、句をサポートする任意のDMLステートメントである可能性があります)。次のように、出力をローカル一時テーブルに配置したいと思います。output
update
    dbo.MyTable
set
    MyField = 30
output
    inserted.MyKeyField
into
    #myTempTable
from
    dbo.MyTable as t
where
    f.MyFilteredField = 8 
句のドキュメントに従って、構文が正しいことを知っていますoutput(私の強調):
output_table
呼び出された行が呼び出し元に返されるのではなく、返される行が挿入されるテーブルを指定します。output_tableは一時テーブルの場合があります。
そうは言っても、テーブルを作成するだけであるという点で、ステートメントのinto句の場合と同じように機能することを期待しています。select
ただし、次のエラーが発生します。
オブジェクト名'#myTempTable'が無効です。
output句(insertedまたはdeleted)の結果を一時テーブルに入れるにはどうすればよいですか?