SET TRANSACTION
- Enterprise Edition
- Couchbase Server 7.0
The SET TRANSACTION
statement enables you to specify settings for a transaction.
Purpose
The SET TRANSACTION
statement enables you to specify settings for an ACID transaction.
Refer to Transactions for further information.
This statement may only be used within a transaction.
If you are using the Query Workbench or the Query REST API, you must set the txid query parameter to specify the transaction ID.
If you are using the cbq shell, you don’t need to specify the transaction ID. Once you have started a transaction, all statements within the cbq shell session are assumed to be part of the same transaction until you rollback or commit the transaction.
You may also optionally specify settings when you start the transaction using the BEGIN TRANSACTION
command.
Currently, the only available transaction setting is "isolation level read committed".
This setting is enabled by default.
The SET TRANSACTION statement is therefore optional and may be omitted.
|
Examples
cbq> SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
$ curl http://localhost:8093/query/service \
-u Administrator:password \
-H 'Content-Type: application/json' \
-d '{
"statement": "SET TRANSACTION ISOLATION LEVEL READ COMMITTED;",
"pretty": true,
"txid": "d81d9b4a-b758-4f98-b007-87ba262d3a51" (1)
}'
1 | The transaction ID generated when the transaction began. |
Related Links
-
To begin a transaction, refer to BEGIN TRANSACTION.
-
To set a savepoint, refer to SAVEPOINT.
-
To rollback a transaction, refer to ROLLBACK TRANSACTION.
-
To commit a transaction, refer to COMMIT TRANSACTION.
-
Blog post: N1QL Transactions.