大家好,以下两句sql并发时会死锁吗?我查了一些资料,得知update是锁表的,那么我能否将update产生的锁设为更细的粒度(行)呢?update tab set field1 = 'aaa' where field2='1';
update tab set field1 = 'bbb' where field2='2';注,项目的情况是这样的:
1、表中记录较多;
2、多用户并发,update那张表,但是同一时刻不可能共同操作一条记录;
3、每次update操作只针对一条记录。谢谢,谢谢~~
update tab set field1 = 'bbb' where field2='2';注,项目的情况是这样的:
1、表中记录较多;
2、多用户并发,update那张表,但是同一时刻不可能共同操作一条记录;
3、每次update操作只针对一条记录。谢谢,谢谢~~
注意: 锁定数据库的一个表的区别SELECT * FROM table WITH (HOLDLOCK)
其他事务可以读取表,但不能更新删除SELECT * FROM table WITH (TABLOCKX)
其他事务不能读取表,更新和删除