我有2张桌子:
Table 1
和Table 2
。
我想做什么,我想使用触发器从Table1到Table2复制新插入的记录。
我在Table1上创建了触发器,当在table1中插入大量数据时,它将复制Table2中新插入的记录。它适用于单行插入,但不适用于多行插入。
请告诉我,这有什么问题?
CREATE TRIGGER [dbo].[TRIG_TABLE1]
ON [dbo].[Table1]
AFTER INSERT AS
IF @@ROWCOUNT >=1
BEGIN
INSERT INTO Table2
(CustID
,DateCreated
,DateModify)
SELECT i.CustID
,i.DateCreated
,i.DateModify
FROM Table1 as i
WHERE (i.CustID IN (select CustID from INSERTED) and i.DateCreated IN (select DateCreated from INSERTED))
答案 0 :(得分:3)
我不明白你为什么不直接使用INSERTED
伪表:
CREATE TRIGGER [dbo].[TRIG_TABLE1]
ON [dbo].[Table1] AFTER INSERT AS
BEGIN
INSERT INTO Table2(CustID,DateCreated,DateModify)
SELECT CustID, DateCreated, DateModify
FROM INSERTED
END