我正在使用SqlBulkCopy將數(shù)據(jù)從 C# 中的 2 秒復(fù)制DataTable到 SQL Server。這些表由 關(guān)聯(lián)ParentId。我已經(jīng)將SqlBulkCopy每一個(gè)都包裝DataTable在一個(gè)事務(wù)中。我將向其中寫入數(shù)據(jù)的 SQL Server 表的ParentId身份也設(shè)置為是。我正在DataTable使用將父級(jí)寫入服務(wù)器bulkCopy.WriteToServer(parentDataTable);現(xiàn)在我希望能夠使用SQL ServerParentId中的新數(shù)據(jù)更新子數(shù)據(jù)表中的數(shù)據(jù)。ParentId但是,父數(shù)據(jù)表仍然有原始的ParentId,而不是 SQL Server ParentId。調(diào)用后如何獲取ParentId父數(shù)據(jù)表的SqlBulkCopy.WriteToServer?
2 回答
守候你守候我
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊
看看SET IDENTITY_INSERT ON,如果你使用它,那么你可以使用舊的 ParentId 插入新表(確保 ParentId 是插入查詢的一部分 - 如果SET啟用該選項(xiàng),它不會(huì)失?。?。
如果您確實(shí)需要更改 ParentId(例如,如果表中有現(xiàn)有數(shù)據(jù)),那么您需要在批量插入之前進(jìn)行,因此您仍然需要設(shè)置 identity_insert。如果您在之后嘗試這樣做,那么您就不走運(yùn)了,因?yàn)楦副砗妥颖碇g的鏈接消失了。
哈士奇WWW
TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊
您應(yīng)該能夠使用對(duì)象的[ColumnMappings][1]屬性映射您喜歡的任何列SqlBulkCopy。
- 2 回答
- 0 關(guān)注
- 429 瀏覽
添加回答
舉報(bào)
0/150
提交
取消
