至少有三种,行级锁、页级锁、表级锁
行级锁是SQL Server 7.0以后才开始支持的,好象MS也不推荐使用,它的默认设置为页级锁.
不知它是是否支持这样的语句
select * from tablename where ... for update;
这样就将这些记录锁住.
另update 语句在没有commit之前会自动锁住修改的记录,不须程序处理。
行级锁是SQL Server 7.0以后才开始支持的,好象MS也不推荐使用,它的默认设置为页级锁.
不知它是是否支持这样的语句
select * from tablename where ... for update;
这样就将这些记录锁住.
另update 语句在没有commit之前会自动锁住修改的记录,不须程序处理。
select [fields] from [tablename] with(UDPLOCK)
事务提交或回滚后,锁即解开。我认为在三层应用中非常有用。
多谢 mycode 给我的提示,要不然,我不会这模快解决问题。