BEGIN WORK
SQL - Language Statements
BEGIN WORK
Begins a transaction
1998-09-08
BEGIN [ WORK | TRANSACTION ]
1998-09-08
Inputs
None
1998-09-08
Outputs
BEGIN
This signifies that a new transaction has been started.
NOTICE: BeginTransactionBlock and not in default state
This indicates that a transaction was already in progress.
The current transaction is not affected.
1998-09-08
Description
BEGIN initiates a user transaction
which Postgres will
guarantee is serializable with respect to all concurrently
executing transactions. Postgres uses two-phase
locking
to perform this task. If the transaction is committed,
Postgres will ensure either that all updates are
done or else
that none of
them are done. Transactions have the standard ACID
(atomic, consistent, isolatable, and durable) property.
1998-09-08
Notes
The keyword TRANSACTION is just a cosmetic alternative to WORK.
Neither keyword need be specified.
Refer to the LOCK statement for further information
about locking tables inside a transaction.
Use COMMIT or ROLLBACK
to terminate a transaction.
Usage
To begin a user transaction:
BEGIN WORK;
Compatibility
BEGIN
is a Postgres language extension.
1998-09-08
SQL92
There is no explicit BEGIN WORK command in SQL92;
transaction initiation
is always implicit and it terminates either with a COMMIT or with
a ROLLBACK statement.