我编写了一个程序,使用sqlCopy插入一些记录以加快处理速度,然后代码根据新插入的记录执行并更新[在另一个表上]的语句。
问题是更新几乎总是在插入之前执行! [大约2秒之前..根据插入和更新行的时间戳。]在插入之后我可以使更新执行的唯一方法是将代码保持睡眠状态2-3秒..有没有更好的在代码继续之前确保插入完成的方法是什么?
我甚至捕获了RowsCopied事件,在更新之前立即复制行。但是在数据库中,更新会更早进入。
bulkCopy.WriteToServer(table)
Dim Sql = "Update tbl Set Total = (select sum(qty) from Inserttbl where inId = ID)"
ExecuteSQL(Sql)
答案 0 :(得分:1)
发现问题...插入时间戳由客户端提供,而更新时间戳来自服务器。客户端时间比服务器时间早2秒。
我改变了两者应该使用服务器getDate函数。问题解决了。