目前主要商业数据库Oracel,SQL Server和Sybase在锁类型和锁定方案都或多或少有一些差异,因为最近正在使用Sybase,因此在此对Sybase数据库的锁定方案进行简单介绍,也作为自己的一个学习过程。
锁定可以对当前活动的表,数据页或数据行起到保护作用,同时当一个进程持有影响另一个进程所需访问的数据的锁时,系统的性能就会收到影响,最严重的性能影响即产生死锁。
理论上来讲,数据库级、表级、页级、行级或列级应该都可以锁定,但是锁定的范围太大或太小都会影响数据库的并发性或锁定开销。因此根据不同的锁定粒度,Sybase数据库提供了以下三种类型的锁定方案:
1.所有页锁定,用于锁定数据页和索引页。
2.数据页锁定