ALLBASE/SQL Reference Manual (36216-90216)

Chapter 10 313
SQL Statements A - D
BEGIN WORK
marked uniquely, allowing the DBA to easily identify the transaction being
executed by any user at any moment.
HostVariable
is a host variable containing the
LabelString
.
FILL is used to optimize I/O performance when loading data and creating
indexes.
PARALLEL FILL is used to optimize I/O performance for multiple, concurrent loads to the
same table. The PARALLEL FILL option must be in effect for each load.
NO FILL turns off the FILL or PARALLEL FILL option for the duration of the
transaction. This is the default fill option.
Description
Detailed information about isolation levels is presented in the "Concurrency Control
through Locks and Isolation Levels" chapter.
When you use most SQL statements, ISQL or the preprocessor automatically issues the
BEGIN WORK statement on your behalf, unless a transaction is already in progress.
However, to clearly delimit transaction boundaries and to set attributes for a
transaction (isolation level, priority, transaction label, and fill options), you can use
explicit BEGIN WORK statements.
The following statements do
not
force an automatic BEGIN WORK to be processed:
ASSIGN BEGIN ARCHIVE BEGIN DECLARE SECTION
BEGIN WORK CHECKPOINT COMMIT ARCHIVE
COMMIT WORK CONNECT DECLARE VARIABLE
DISABLE AUDIT LOGGING ENABLE AUDIT LOGGING END DECLARE SECTION
ASSIGN BEGIN ARCHIVE BEGIN DECLARE SECTION
BEGIN WORK CHECKPOINT COMMIT ARCHIVE
COMMIT WORK CONNECT DECLARE VARIABLE
DISABLE AUDIT LOGGING ENABLE AUDIT LOGGING END DECLARE SECTION
GOTO IF INCLUDE
PRINT RAISE ERROR RELEASE
RESET RETURN ROLLBACK TO SAVEPOINT
ROLLBACK WORK SET SESSION SET TIMEOUT
SET TRANSACTION START DBE STOP DBE
SQLEXPLAIN TERMINATE USER WHENEVER
WHILE
See Chapter 2 , “Using ALLBASE/SQL,” "Scoping of Transaction and Session
Attributes" section for information about statements used to set transaction attributes.
Within a given transaction, the isolation level, priority, and label can be changed by
issuing a SET TRANSACTION statement. Attributes specified in a SET TRANSACTION
statement within a transaction override any attributes set by a BEGIN WORK statement
for the same transaction.
An application or ISQL can have one or more active transactions at a time. Refer to the
SET MULTITRANSACTION statement syntax in this chapter.