我的任务是插入 1000 多行 4 列。有问题的表没有 PK
或 FK
。假设它包含列 ID
、CustomerNo
、Description
。需要插入的记录可以具有相同的 CustomerNo
和 Description
值。
我阅读了有关将数据导入临时表、将其与真实表进行比较、删除重复项并将新记录移动到真实表的信息。
我还可以有 1000 个查询来检查这样的记录是否已经存在,如果不存在则插入数据。但出于显而易见的原因,我太羞于尝试了。
我不期待任何具体代码,因为我没有提供任何具体细节。我所希望的是完成此类任务的一些伪代码或一般建议。我等不及要给一些赞成票了!
最佳答案
所以想法是,如果已经有具有相同 ID 的条目,您不想插入条目吗?
如果是这样,在将数据导入临时表后,您可以在 select 语句的 where
子句中完成您要查找的内容:
insert into table
select ID, CustomerNo, Description from #data_source
where (#data_source.ID not in (select table.ID from table))
关于c# - SQL批量插入,避免重复,无PK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32081802/