我正在使用以下代码批量插入 CSV 文件:
BULK
INSERT CustomSelection
FROM 'c:\asd\a1.csv'
WITH
(
FIRSTROW =2,
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
FIRE_TRIGGERS
)
GO
我有 FIRE_TRIGGERS 属性,但触发器仍未执行。触发器肯定有效,因为如果我手动插入表中,那么它就会执行。有什么帮助解决这个问题吗?
我正在使用以下代码批量插入 CSV 文件:
BULK
INSERT CustomSelection
FROM 'c:\asd\a1.csv'
WITH
(
FIRSTROW =2,
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
FIRE_TRIGGERS
)
GO
我有 FIRE_TRIGGERS 属性,但触发器仍未执行。触发器肯定有效,因为如果我手动插入表中,那么它就会执行。有什么帮助解决这个问题吗?
在批量导入操作期间,您的触发器只会被触发一次,因为它被视为影响多行数据的单个语句。
您的触发器应该能够处理一组行而不是单行。也许这就是原因,因为您的手动插入测试工作正常并且您的批量导入失败。
这篇 MSDN 文章的 C 部分向您展示了如何创建插入触发器来处理多行数据:http: //msdn.microsoft.com/en-us/library/ms190752.aspx
希望能帮助到你。