sql server和sqlanywhere 锁的比较

本文探讨了SQL Server与Anywhere数据库管理系统中锁机制的区别,特别是在读已提交(read committed)隔离级别下如何处理脏读、非重复读及幻象读等问题。通过具体的示例说明了两种系统在加锁范围上的不同:SQL Server倾向于锁定更大范围的数据,而Anywhere则实现按行加锁。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

锁和事务的隔离级别一起起作用的
通常使用readcommit隔离级别,这样防止脏读,但有非重复读,和幻像数据问题
sql server加锁的范围比较大些,而anywhere是按行加锁的比较灵活。
举例
sql server

test
id      name                              
1      11111
3 3333 
1。                         
begin tran
insert test values(2,'111')
delete from test  where id=3
2.select * from test where id=1
被锁定要等待1完成后才能执行

anywhere
同样的语句,2直接查询出结果,不会被阻塞
相当于 sql server加上readpast也啵、跳不过去
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值