BulkInsert

时间:2016-02-22 02:02:57

标签: sql-server vb.net bulkinsert sqlbulkcopy

我编写了一个程序,使用sqlCopy插入一些记录以加快处理速度,然后代码根据新插入的记录执行并更新[在另一个表上]的语句。

问题是更新几乎总是在插入之前执行! [大约2秒之前..根据插入和更新行的时间戳。]在插入之后我可以使更新执行的唯一方法是将代码保持睡眠状态2-3秒..有没有更好的在代码继续之前确保插入完成的方法是什么?

我甚至捕获了RowsCopied事件,在更新之前立即复制行。但是在数据库中,更新会更早进入。

     bulkCopy.WriteToServer(table)

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

1 个答案:

答案 0 :(得分:1)

发现问题...插入时间戳由客户端提供,而更新时间戳来自服务器。客户端时间比服务器时间早2秒。

我改变了两者应该使用服务器getDate函数。问题解决了。