Oracle9i Supplied PL/SQL Packages and Types Reference Release 1 (9.0.1) Part Number A89852-02 |
|
DBMS_WM , 45 of 52
This procedure controls access to versioned rows and to corresponding rows in the previous version.
DBMS_WM.SetLockingON( lockmode IN VARCHAR2);
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.
Locking is enabled at the user session level, and the locking mode stays in effect until any of the following occurs:
C
(carry-forward) unless another locking mode has been specified using SetWorkspaceLockModeON Procedure.
The locks remain in effect for the duration of the workspace, unless unlocked by the UnlockRows Procedure. (Existing locks are not affected by the SetLockingOFF Procedure.)
There are no specific privileges associated with locking. Any session that can go to a workspace can set locking on.
The following example sets exclusive locking on for the session.
EXECUTE DBMS_WM.SetLockingON ('E');
All rows locked by this user remain locked until the workspace is merged or rolled back.
|
Copyright © 1996-2001, Oracle Corporation. All Rights Reserved. |
|