通常,对数据库要进行多次更新,这些更新必须在事务处理的范围内进行。ADO.NET中的事务处理首先要在数据库连接对象上调用BeginTransaction()方法,这些方法返回实现IDbTransaction接口的对象,而该对象是在System.Data中定义的。
下面的代码序列是在Sql Server连接上开始事务处理的:
string source = "server=(local)\\NetSDK;" +" integrated security=SSPI;" +"database=Northwind";
SqlConnection conn = new SqlConnection(source);
conn.Open();
SqlTransaction tx = conn.BeginTransaction();
// Execute some commands, then commit the transaction
tx.Commit();
conn.Close();
在开始一个事务处理时,可以选择在该事务处理中执行的命令独立级别。该级别确定了如何在一个数据库会话中查看在另一个数据库会话中所进行的修改,并不是所有的数据库引擎都支持表21-1所示的4个级别。