Other databases may reduce the amount of contention in
the database by locking an individual row only while it??™s being read, rather than over
the complete duration of the row??™s transaction. A row that??™s retrieved at the end of a
result set may have been changed since the time the result set retrieval began.
Because rows that will be read later in the execution of the query weren??™t locked,
they could be changed by other users, which would result in an inconsistent view of
the data.
Oracle??™s Isolation Levels
Oracle, like many other databases, uses the concept of isolation levels to describe
how a transaction will interact with other transactions and how it will be isolated
from other transactions. An isolation level is essentially a locking scheme implemented
by the database that guarantees a certain type of transaction isolation.
An application programmer can set an isolation level at the session level (ALTER
SESSION) or transaction level (SET TRANSACTION). More restrictive isolation levels
will cause more potential contention, as well as delivering increased protection
against data integrity problems.
Pages:
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426