SQL$HELP72.HLB  —  ALTER  DATABASE  Arguments  LOCKING level
    Syntax options:

    LOCKING IS ROW LEVEL | LOCKING IS PAGE LEVEL

    Specifies if locking is at the page or row level. This clause
    provides an alternative to requesting locks on records. The
    default is ROW LEVEL.

    When many records are accessed in the same area and on the same
    page, the LOCKING IS PAGE LEVEL clause reduces the number of lock
    operations perfomed to process a transaction; however, this is at
    the expense of reduced concurrency because these page locks are
    held until COMMIT/ROLLBACK time. Transactions that benefit most
    with page-level locking are of short duration and also access
    several database records on the same page.

    Use the LOCKING IS ROW LEVEL clause if transactions are long in
    duration and lock many rows.

    The LOCKING IS PAGE LEVEL clause causes fewer blocking
    asynchronous system traps and provides better response time
    and utilization of system resources. However, there is a higher
    contention for pages and increased potential for deadlocks and
    long transactions may use excessive locks.

    Page-level locking is never applied to RDB$SYSTEM or the DEFAULT
    storage area, either implicitly or explicitly, because the
    locking protocol can stall metadata users.

    You cannot specify page-level locking on single-file databases.
Close Help