锁的种类

下表展示 GBase 8s 数据库服务器对不同情况支持的锁的类型。
锁类型 用途
共享的 共享锁为了只读保留它的对象。它防止在该锁保留期间更改该对象。多个程序可在同一对象上放置共享锁。在以共享的模式锁定记录时,多个对象可读取该记录。
排他的 排他锁为了单个程序的使用保留它的对象。当程序打算更改该对象时,使用此锁。

您不可在存在任何其他种类锁的地方放置排他锁。在您放置排他锁之后,您不可在同一对象上放置另一锁。

可提升的(或更新) 可提升的(或更新)锁有更新的意图。您仅可在不存在其他可提升锁或排他锁的地方放置它。您可在已有共享锁的记录上放置可提升锁。当程序要更改该锁定了的对象时,您可将该可提升锁提升为排他锁,但仅当该锁可能从可提升的更改为排他的时刻,该记录上没有包括共享锁在内的其他锁时。如果当设置了可提升锁时,共享锁在该记录上,则在将可提升锁提升为排他锁之前,您必须删除共享锁。