あるテーブルからレコードを削除し、削除されたレコードを別の同様の(ただし同一ではない)テーブルに出力するクエリを作成しようとしています。
このコードは私がやろうとしていることです:
delete from MyServer.dbo.t1
output deleted.colA into MyServer.dbo.t2.colA
エラーが発生し、sys.serversでサーバー「MyServer」が見つかりませんでした。
ただし、この(基本的には操作なしの)コードを(有効なサーバー名を使用して)実行することはできます。
delete from MyServer.dbo.t1
output deleted.* into MyServer.dbo.t1
したがって、基本的にt-sqlのエラーメッセージは意味をなさないようです。そのため、どうすればよいかわかりません。
t-sqlがこの奇妙なエラーをスローするのはなぜですか?なぜsys.serversでMyServerを「見る」ことができるのに、他の時間は見ることができないのですか?
特定の列の削除された値を新しいテーブルに出力するための正しい構文は何ですか