我在MSDN和Google上做了很多搜索,但看起来IGNORE_DUP_KEY选项的描述非常有限。
我的困惑,
IGNORE_DUP_KEY选项是列的选项吗?一张桌子?几列?索引(使索引唯一)?
如果将IGNORE_DUP_KEY设置为Yes,则在插入一批带有重复键的记录(使用批量插入WriteToServer ADO.Net函数)时(例如,我插入一些已存在于数据库中的值),SQL Server将不会抛出一个错误。批处理作业将成功完成,但不会插入重复的行。将插入所有其他行,SQL Server将其视为作业成功。我的理解是否正确?
答案 0 :(得分:6)
IGNORE_DUP_KEY是CREATE INDEX的一个选项,只影响多行的插入:
IGNORE_DUP_KEY = ON
IGNORE_DUP_KEY = OFF
答案 1 :(得分:2)
IGNORE_DUP_KEY用于给定的唯一索引。
“取消后,当时处于活动状态的任何事务可能会继续,就好像更新或插入从未发生过一样.Nonduplicate键正常插入。”是的,批量插入会报告成功。