c# 事务编程的具体语法大致如下:
OleDbCommand cmd = new OleDbCommand();
//在此链接上创建并启动事务
OleDbTransaction Trans = conn.BeginTransaction();
// NewUserTrans.Begin();
try
{
cmd.Connection = conn;
cmd.Transaction = Trans;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "这里是你的第一条插入语句或其他语句";
cmd.ExecuteNonQuery();
cmd.CommandText = "这里是你的第二条插入语句或其他语句";
cmd.ExecuteNonQuery();
cmd.CommandText = "这里是你的第三条插入语句或其他语句";
cmd.ExecuteNonQuery();
.........................
//注意如果这其中需要用DataAdapter来填充DataSet或DataTable,也要设置DataAdapter的属性值
dataAdapter.SelectCommand.Transaction = trans;//这一句千万不能少
dataAdapter.Fill(datas);
...............
Trans.commin();
}
Catch(Expection ex)
{
Trans.Rollback();//回滚事务
}
也就是说在Access里面执行事务时,在一个事务开始后到提交或者回滚之间的所有操作不管是查询还是更新,Command命令的Transaction 属性都必须设置,否则会产生异常。