[英]use sql bulk copy for dependent table
我有兩個DataTable
, tblSoftware
和tblDeviceSoftware
設計如下:
tblSoftware
> SoftwareID|SoftwareName|Version
tblDeviceSoftware
> DeviceSoftwareID|DeviceID|SoftwareID|SoftwareName|Version
我有300-500條記錄,並且我想在這種情況下使用SQL BULK INSERT 。 如果存在相同的softwareName
,則不要將其插入。 我正在使用WCF服務插入。 我將通過DeviceName
在sql中獲得DeviceID
。 除了逐行插入之外,什么是將其插入數據庫中的最佳方法。
使用.NET Framework中可用的SqlBulkCopy類,我已經取得了很多成功。
但是,使用SQL Bulk Insert或SqlBulkCopy,我不相信您可以選擇性地確定將哪些記錄添加到目標表中。 而是,添加了源中的所有內容(或嘗試根據鍵沖突等進行嘗試)。
您可以做的是在SQL Server中創建另一個目標表,將數據批量插入該表中,然后執行插入查詢以僅將必要的記錄插入目標表中。
否則,您需要執行測試,以便將源數據更改為僅包括需要添加到目標表的記錄。 我的直覺是,這種方法比作為插入語句一部分在SQL Server中執行此測試要慢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.