我有一組文本文件,我通過C#中的SqBulkCopy導入到SQL Server中。有一些記錄出現在多個記錄中,我想跳過這些記錄而不是拋出錯誤並停止。在SQL Server中跳過完全相同的記錄
對於有明確的'uniqueID'/主鍵的情況,一切都很好 - 我已經使用了「WITH(IGNORE_DUP_KEY = ON)」,效果很好。
在這種情況下,不能確定這樣的唯一ID,不能將所有字段連接在一起,或者創建一個涉及所有字段的複合鍵。我試圖得到一個唯一的transactionID或類似的,但沒有可用的。有時記錄是一樣的,但一個字段中的一位數字已經改變;在這種情況下,我希望它插入表中。
我認爲可能有更好的辦法比對所有領域創建一個關鍵?如果我確實這樣做了,那就意味着日期,字符串,值等都必須混合在一起才能形成關鍵。
查詢行了,用我的輸入線的哈希散列值進行比較是一種思路,但性能將是可怕的,我敢肯定:)
人對如何最好地做到這一點建議嗎?
感謝
謝謝,EXCEPT看起來很理想! – Glinkot 2011-06-15 05:32:12
酷...我不知道這是在SQL Server(顯然是2005+)中可用。 +1。 – codekaizen 2011-06-15 05:32:47