0

私は Sql Server は初めてですが、常に Oracle をよく使用しています。Sql Server では一部の機能がサポートされていないようです。たとえば、テーブルの挿入を監視し、そのテーブルに挿入されたものを別のテーブルにコピーしたいとします。

ここに私のコードがあります

Create TRIGGER Post_Trigger ON Posts For Insert
AS
INSERT INTO EmailQueueRaw (UserID,CreatedBy,EmailTypeId,EmailTablePrimaryKey)    VALUES('','Arif','1','1');
GO

Oracle では、私は New および Old 関数を使用していましたが、これは優れた機能です。しかし、Sql Serverにはありません。ここで何をすべきかわかりません。同じデータを別のテーブルにコピーする方法を教えてください。

4

1 に答える 1

4

INSERTED(および、必要に応じて)を使用しますが、これらは疑似テーブルであり、0、1、または複数の行を含めることDELETEDができることに注意する必要があります。

Create TRIGGER Post_Trigger ON Posts For Insert
AS
INSERT INTO EmailQueueRaw (UserID,CreatedBy,EmailTypeId,EmailTablePrimaryKey)
SELECT '',ColumnA,'1',ColumnB FROM inserted;
GO
于 2013-04-10T08:19:21.643 に答える