| DotNetFirebird Using Firebird SQL in .NET. |
|
Home
Features
Download
Documentation
Developer's Documentation
Connection String Parameters
Using FbConnectionStringBuilder to Build a Connection String
Connection Pooling
Create a New Database From an SQL Script
Using FbDataAdapter to Fill a Dataset
Firebird and .NET Framework Data Types Mapping
Transaction Isolation Levels
Embedded Firebird Documentation
Performance Tuning
Security
Administration
Migration to Firebird
Sample Code
FAQ
Tools and Code
About
Blog
|
Transaction Isolation Levels
Every database operation in Firebird runs inside a transaction. The transactions have these features: Atomicity, Consistency, Isolation, Durability (read more about ACID). Let's talk a bit about the isolation feature. Isolation says that the transaction shouldn't interfere with other transactions. Achieving full isolation would mean serializing the transactions and that would slow down the database. Therefore there are four transaction isolation levels defined and every of them represents a different balance between isolation and performance:
Firebird doesn't match the standard (SQL92) isolation levels exactly. The following table compares the isolation levels that are supported by Firebird ADO.NET with the SQL92 standard.
All transactions have these additional Firebird transaction options set:
You can use the predefined isolation levels by calling public FbTransaction BeginTransaction(IsolationLevel) or you can tune the transaction options more precisely by using this BeginTransaction overload: public FbTransaction BeginTransaction(FbTransactionOptions). IsolationLevel.ReadUncommittedANSI/ISO Read Uncommitted isolation level is not supported by Firebird. IsolationLevel.ReadUncommitted behaves like ReadCommitted but it returns the latest committed version of a rowand ignores any other (uncommitted) versions.
IsolationLevel.ReadCommitted
IsolationLevel.RepeatableRead
IsolationLevel.Serializable
Copyright © 2005 - 2007 DotNetFirebird |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||