Can be set for an individual connection or for PUBLIC. You must have the SET ANY PUBLIC OPTION system privilege to set this
option for PUBLIC or for another user or role. Takes effect immediately.
This option controls the locking isolation level as follows:
0
Allow dirty reads, non-repeatable reads, and phantom rows.
1
Prevent dirty reads. Allow non-repeatable reads and phantom rows.
2
Prevent dirty reads and non-repeatable reads. Allow phantom rows.
3
Serializable. Prevent dirty reads, non-repeatable reads, and phantom rows.
Snapshot
Use a snapshot of committed data from the time when the first row is read or updated by the transaction.
Statement-snapshot
For each statement, use a snapshot of committed data from the time when the first row is read from the database. Non-repeatable
reads and phantom rows can occur within a transaction, but not within a single statement.
Readonly-statement-snapshot
For read-only statements, use a snapshot of committed data from the time when the first row is read from the database.
Non-repeatable reads and phantom rows can occur within a transaction, but not within a single statement. For updatable statements,
use the isolation level specified by the updatable_statement_isolation option (can be one of 0 (the default), 1, 2, or 3).
Set the allow_snapshot_isolation option to On to use the Snapshot, Statement-snapshot, or Readonly-statement-snapshot settings.
If you are using the SQL Anywhere JDBC driver, the default isolation level is 0.
Queries running at isolation level Snapshot, Statement-snapshot, or Readonly-statement-snapshot see a snapshot of a committed
state of the database.
You can override any temporary or PUBLIC settings for this option within individual INSERT, UPDATE, DELETE, SELECT, UNION,
EXCEPT, and INTERSECT statements by including an OPTION clause in the statement.