JDBC API 2.0 defines five levels of transaction isolation for database concurrency control. Which of
the following is the lowest level of transaction isolation?
A.
TRANSACTION_SERIALIZABLE
B.
TRANSACTION_NONE
C.
TRANSACTION_READ_COMMITTED
D.
TRANSACTION_READ_UNCOMMITTED
E.
TRANSACTION_REPEATABLE_READ
Explanation:
There are five levels of transaction isolation provided by JDBC 2.0 Connection interface. The higher
the transaction level, the more the care is taken to avoid database conflicts. On the other hand, the
higher the level of isolation, the slower the application executes (due to increasedlocking overhead and decreased concurrency between users). The developer must balance the need
for performance with the need for data
consistency when making a decision about what isolation level to use. However, the level that can
actually be supported depends on the
capabilities of the underlying DBMS.
The highest transaction isolation level specifies that if one transaction is operating on a database, no
other transaction can access that part
of the database.
The transaction isolation levels in terms of concurrency control in ascending order are as follows:
TRANSACTION_NONE
TRANSACTION_READ_COMMITTED
TRANSACTION_READ_UNCOMMITTED
TRANSACTION_REPEATABLE_READ
TRANSACTION_SERIALIZABLE
The lowest transaction isolation level, i.e. TRANSACTION_NONE, specifies that transactions are not
at all supported.
A developer can change a transaction isolation level by using the setTransactionIsolation() method of
the Connection interface.