BulkInsert之前正在執行更新

bulkinsert sqlbulkcopy sql-server vb.net

我編寫了一個程序,使用sqlCopy插入一些記錄以加快處理速度,然後代碼根據新插入的記錄執行並更新[在另一個表上]的語句。

問題是更新幾乎總是在插入之前執行! [大約2秒之前..根據插入和更新行的時間戳。]我可以在插入後執行更新的唯一方法是將代碼保持睡眠狀態2-3秒..有沒有更好的在代碼繼續之前確保插入完成的方法?

我甚至捕獲了RowsCopied事件,在更新之前立即復制行。但是在數據庫中,更新會更早進入。

     bulkCopy.WriteToServer(table)

     Dim Sql = "Update tbl Set Total = (select sum(qty) from Inserttbl where inId = ID)"
     ExecuteSQL(Sql)

一般承認的答案

發現問題...插入時間戳由客戶端提供,而更新時間戳來自服務器。客戶端時間比服務器時間早2秒。

我改變了兩個應該使用服務器的getDate函數。問題解決了。



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因