不用自己加锁,系统自己处理,比如:
--1)排它锁 
--在第一个连接中执行以下语句
begin tran
   update tb set A='aa' where B='b2' 
   waitfor delay '00:00:10'  --等待10秒
commit tran--在第二个连接中执行以下语句
begin tran
   select * from tb where B='b2'   
commit tran
/**若同时执行上述两个语句,则select查询必须等待update执行完毕才能执行即要等待10秒,
**如果两个语句都是select操作,则两个select语句可以并行.
**只要第一句更新的行数大于零,则第二句必须等待。如果更新的行数等于零,不需要等待。
**如果使用select * from tb WITH ( NOLOCK) where B='b2',就不用等待,立即可以得到结果。 
**/