许多同时插入INSERT - 最佳策略?

时间:2013-11-15 16:48:05

标签: sql-server transactions

我正在计划一个包含许多移动设备的应用程序,这些设备定期连接到SQL服务器,并将INSERT发送到100个记录块中的表,包含在事务中(100个记录块用于最小化网络开销,因为按记录插入记录很慢)。最多可以有20-30台设备同时发送数据。问题,我找不到没有明确的答案 - 是SQL Server阻止目标表,直到提交单个事务(所以其他设备必须等待)或多个事务并行运行?测试当前显示表被阻塞,直到提交事务,这有时会导致设备超时错误。将事务级别设置为“read uncommitted”会对INSERT语句产生任何影响吗? (我不关心“脏读”)。

1 个答案:

答案 0 :(得分:0)

停止将1500个记录批次分成100个记录批次。使用单个Bulk Insert语句插入所有1500条记录。这几乎肯定是最快的方法。如果你不能使用这种方法,你应该解释原因