奇怪的问题。我正在表中插入 10,000 条左右的记录,并且主键不是身份字段。因此,当插入所有 10,000 条记录时,如果有些重复,有没有办法跳到 sql server insert 中的下一条记录并确保不重复插入?我真的不在乎重复项没有被插入。
使用“忽略重复键”选项。
最简单的方法是删除 SQL Server Management Studio 中的主键。
然后创建一个新索引,类型为“Index”,将“Is Unique”设置为“Yes”,并将“Ignore Duplicate Keys”设置为“Yes”。然后插入您的记录。它将插入除重复项之外的所有内容。完成后,您可以删除该索引,然后重新创建主键。
如果您需要 TSQL 方法,请参阅 CREATE INDEX 调用中的 IGNORE_DUP_KEY 选项:
创建索引 (Transact-SQL) http://msdn.microsoft.com/en-us/library/ms188783.aspx
EDIT:
另一种方法是在源表和要插入的记录之间使用 LEFT JOIN,以及 GROUP BY 子句,仅插入源中不存在的记录。 GROUP BY 将消除新记录中的重复项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)