我正在使用SqlBulkCopy將數據從 C# 中的 2 秒復制DataTable到 SQL Server。這些表由 關聯ParentId。我已經將SqlBulkCopy每一個都包裝DataTable在一個事務中。我將向其中寫入數據的 SQL Server 表的ParentId身份也設置為是。我正在DataTable使用將父級寫入服務器bulkCopy.WriteToServer(parentDataTable);現在我希望能夠使用SQL ServerParentId中的新數據更新子數據表中的數據。ParentId但是,父數據表仍然有原始的ParentId,而不是 SQL Server ParentId。調用后如何獲取ParentId父數據表的SqlBulkCopy.WriteToServer?
2 回答

守候你守候我
TA貢獻1802條經驗 獲得超10個贊
看看SET IDENTITY_INSERT ON,如果你使用它,那么你可以使用舊的 ParentId 插入新表(確保 ParentId 是插入查詢的一部分 - 如果SET
啟用該選項,它不會失?。?/p>
如果您確實需要更改 ParentId(例如,如果表中有現有數據),那么您需要在批量插入之前進行,因此您仍然需要設置 identity_insert。如果您在之后嘗試這樣做,那么您就不走運了,因為父表和子表之間的鏈接消失了。
- 2 回答
- 0 關注
- 408 瀏覽
添加回答
舉報
0/150
提交
取消