|Oracle9i Supplied PL/SQL Packages and Types Reference
Release 1 (9.0.1)
Part Number A89852-02
DBMS_WM , 50 of 52
This procedure sets the default mode for the row-level locking in the workspace.
DBMS_WM.SetLockingON( workspace IN VARCHAR2, lockmode IN VARCHAR2 [, override IN BOOLEAN DEFAULT FALSE]);
Name of the workspace for which to set the locking mode. The name is case sensitive.
This procedure affects Workspace Manager locking, which occurs in addition to any standard Oracle server locking. Workspace Manager locks can be used to prevent conflicts. When a user locks a row, the corresponding row in the parent workspace is also locked. Thus, when this workspace merges with the parent at merge time, it is guaranteed that this row will not have a conflict.
Exclusive locking prevents the use of what-if scenarios in which different values for one or more columns are tested. Thus, plan any testing of scenarios when exclusive locking is not in effect.
There are no specific privileges associated with locking. Any session that can go to a workspace can set locking on.
All new changes by this session or a subsequent session are locked, unless the session turns locking off by executing the SetLockingOFF Procedure.
An exception is raised if any of the following occurs:
WM_ADMIN_ROLErole or is not the owner of
workspaceis a continually refreshed workspace (see the description of the
isrefreshedparameter of the CreateWorkspace Procedure procedure).
The following example sets exclusive locking on for the workspace named
All locked rows remain locked until the workspace is merged or rolled back.