簡體   English   中英

SQL 服務器覆蓋違反唯一約束

[英]SQL Server overwrite unique constraint violation

我有兩個文件,我通過 Node JS 導入到 SQL 服務器。 該表具有權益工具標識符 (ISIN) 的唯一鍵

data1.csvdata2.csv

我先導入data1.csv,每一行都插入到數據庫中。 在此之后,我導入 data2.csv(值再次插入數據庫),它可能包含相同的 ISIN,但它的相關值比第一個文件具有更高的優先級(這些 ISIN 中的 5 個不多,大約 1000 個)。

如果違反唯一約束,我可以用 SQL 服務器做什么來覆蓋值? 我知道有一個選項可以先上傳 data2.csv,但是有一些外部限制不允許我這樣做。

請告訴我是否需要其他信息

我會推薦分期過程來做到這一點:
1. 創建一個與目標表具有相似架構的臨時表
2.加載前刪除登台表中的所有行(你可以使用截斷)
3.上傳文件到暫存表
4. 將數據加載到最終表中 - 在這里您可以使用一些邏輯來僅插入新行並更新現有行。 合並命令在這種情況下很有用。

對每個源表重復步驟 2 到 4。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM