在Windows服务中如何从多个线程INSERT记录到数据库?

时间:2012-09-10 11:07:52

标签: c# asp.net windows-services

我有一个有五个线程的Windows服务。每个线程将拍摄不同的Excel文件然后它读取excel行并插入到数据库中。是否可以并行插入?目前我正在使用带有 lock 的单一类进行插入。

3 个答案:

答案 0 :(得分:1)

如果您正在插入并且DBMS为您创建了密钥,那么应该没有问题,也不需要锁定。

答案 1 :(得分:0)

这取决于您的数据库。如果您的数据库能够处理多个连接(它现在应该是这样)。

它与您进行插入的类没有任何关系。任何锁定都没有必要(当然,除非你的数据库不支持多个连接,我很怀疑)。

答案 2 :(得分:0)

确保它在交易中,并摆脱锁定!你应该没问题......假设你使用的数据库支持交易。

大多数现代数据库都支持多次写入,如果出现另一种错误,使用该事务会更安全。