Locking Granularity

The default granularity for locking a table is at the page level, or whatever you specify (either PAGE or ROW) in the IFX_TABLE_LOCKMODE environment variable, or if that is not set, by setting DEF_TABLE_LOCKMODE in the ONCONFIG file. The LOCK MODE clause of the CREATE TABLE or ALTER TABLE statement can override the default locking granularity by specifying PAGE or ROW. Only row-level locks support the LAST COMMITTED feature of HCL OneDB™.

The LOCK TABLE statement, however, always locks the entire table, overriding any other locking granularity specification for the table.

In all of these contexts, the term "lock mode" means the locking granularity. In the context of the SET LOCK MODE statement, however, "lock mode" refers to the behavior of the database server when a process attempts to access a row or a table that another process has locked.