Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用SqlBulkCopy防止重复插入?_C#_Sql Server 2008_Sqlbulkcopy - Fatal编程技术网

C# 如何使用SqlBulkCopy防止重复插入?

C# 如何使用SqlBulkCopy防止重复插入?,c#,sql-server-2008,sqlbulkcopy,C#,Sql Server 2008,Sqlbulkcopy,我将使用SqlBulkCopy,但我需要防止重复插入。最好的方法是什么?在发出execute WriteToServer命令之前,我是否检查了每个项目是否存在?您没有真正指定源代码。如果是平面文件,您可以将其复制到暂存表中,然后使用插入到sql语句中以过滤重复项。最好的方法是在插入数据的表中添加唯一索引。这将防止向表中添加任何重复的条目 这还可以防止您将太多数据潜在地加载到内存中,并为自己造成其他问题。如果您想从数据库中可用的行中删除重复项,Magnus提供的功能就足够了。但是,您是否需要在插入

我将使用SqlBulkCopy,但我需要防止重复插入。最好的方法是什么?在发出execute WriteToServer命令之前,我是否检查了每个项目是否存在?

您没有真正指定源代码。如果是平面文件,您可以将其复制到暂存表中,然后使用
插入到
sql语句中以过滤重复项。

最好的方法是在插入数据的表中添加唯一索引。这将防止向表中添加任何重复的条目


这还可以防止您将太多数据潜在地加载到内存中,并为自己造成其他问题。

如果您想从数据库中可用的行中删除重复项,Magnus提供的功能就足够了。但是,您是否需要在插入的数据集中查找重复项的一些常规做法。