C# 多线程 数据库数据重复

利用多线程采集数据到数据库,,一定条件下判断数据是否已经在数据库中存在,存在的就做update操作,不存在的就做insert操作,但是现在由于开的线程很多,,导致有时候在数据第一次插入数据库和第二次采集到数据做插入数据库操作的的时候,会由于判断不及时,导致会插入两条数据进去,,这个需要怎么操作?求提供方案。。

可以使用sql事务。

或者多线程里,采集回来后,需要写入到更新到DB时使用lock,锁。(变单线程)追问

能说下具体怎么使用SQL事务的么?还有锁是怎么加的?我采集到数据后,马上就连接数据库进行操作,,这个是在哪个地方加锁?

温馨提示:答案为网友推荐,仅供参考