【发布时间】:2010-11-17 07:04:36
【问题描述】:
我正在尝试将数据从表“tb_A”复制到自身(使用不同的主键)。
当“tb_A”表插入新记录时,我编写了一个触发器来用一条记录填充另一个表“tb_B”。
我运行了以下语句。
INSERT INTO [tb_A]
([NAME])
select top (20)[NAME] from [tb_A]
我预计“tb_B”中有 20 条新记录。但我没有。
无论如何,我看到 FIRE_TRIGGERS 在批量插入期间使用来克服这个问题。 是否有任何方法可以在插入语句中使用它?请举个例子。
盖恩
触发代码(从 Gayan 的评论复制到 gbn 的答案):
CREATE TRIGGER UpdatetbB ON [dbo].[tb_A] FOR INSERT
AS
DECLARE @AID as int
SELECT @AID = [ID] FROM inserted
INSERT INTO [tb_B]([IDA]) VALUES (@AID)
【问题讨论】:
标签: sql sql-server tsql triggers