ADO.NET事务处理

时间:2023-02-20 12:57:05

执行ADO.NET事务包含四个步骤

以SqlTransaction对象为例介绍:

1)调用SqlConnection对象的BeginTransaction()方法,创建一个SqlTransaction对象,标志事务开始.

2)将创建的SqlTransaction对象分配给要执行的SqlCommand的Transaction属性.

3)调用相应的方法执行SqlCommand命令.

4)调用SqlTransaction的Commit()方法完成事务,或调用Rollback()方法中止事务.

注意:在调用BeginTransaction()方法开始事务前,要打开数据库连接,否则将出现异常.

//文本框输入的值
// string txtname = textBox1.Text;
//连接数据库
string str = "data source=.; initial catalog=MySchool;uid=sa;password=";
SqlConnection con = new SqlConnection(str);

//sql语句

string sql = "insert into Grade values('" + textBox1.Text + "')";
SqlCommand cmd = new SqlCommand(sql,con);
con.Open();
//连接打开后,获取一个事务对象
SqlTransaction tr= con.BeginTransaction();
//用cmd对应的Transction属性绑定已经构建好的事务对象
cmd.Transaction = tr;
int count=cmd.ExecuteNonQuery();
if (count > 0)
{
MessageBox.Show("添加成功");
tr.Commit(); //提交事务
}
else
{
tr.Rollback(); //回滚事务
}
con.Close();

ADO.NET事务处理