|
Relinquishes the locks acquired by all previous calls to DBLOCK.
If the calling process has the same database opened multiple times,
only those locks put into effect for the specified access path are
unlocked.
DBUNLOCK(base,qualifier,mode,status)
- base
-
is the name of an array used as the base parameter when opening the
database. The first element of the array must contain the base ID
returned by DBOPEN. (Refer to DBOPEN for more information about the
base ID.)
- qualifier
-
The qualifier argument depends on the mode:
- Modes 1 (2,11,12): Ignored
- Modes 3 (4,13,14): An integer variable referencing the data set
number or the name of an array containing a data set name. Could
also be "@", when releasing a database lock.
- Modes 5 (6,15,16): The name of the array containing the lock
descriptors.
- mode
-
contains an integer indicating the type of unlock desired.
Valid modes are 1, 3, 5, 11, 13 and 15.
Modes 2, 4, 6, 12, 14 and 16 are also accepted as an alias.
- status
-
is the name of an array of 10 halfwords in which the database returns
status information about the procedure. If the procedure executes
successfully, the status array contents are:
Element |
Contents |
1 |
If the procedure succeeds, the return status is 0.
Otherwise it provides a status code to describe the failure.
|
2 |
Zero. TurboIMAGE used to return the number of lock descriptors
that were released.
|
3-4 |
Reserved for internal use.
|
5-10 |
Information about the current procedure call and its results.
|
DBUNLOCK modes other than mode 1 are specific to Eloquence.
They allow to selectively release a lock if called with the
same mode and qualifier as a previous DBLOCK.
Notes:
-
DBUNLOCK is allowed during dynamic transactions.
However the lock will not be released until the transaction ends.
-
With Eloquence status element 2 is always zero. TurboIMAGE used
to return the number of released locks.
-
Modes other than mode 1 are specific to Eloquence.
|
|