你以前没有使用SqlTransaction类进行事务处理?
呵呵....
关于oracle的话,可以参考如下:using (IDbCommand cmd = conn.CreateCommand())
{
IDbTransaction tran = conn.BeginTransaction();
cmd .Connection = conn;
cmd .Transaction = tran;
try
{
cmd.CommandType = CommandType.Text;
cmd.CommandText = "Insert into.....";
cmd.ExecuteNonQuery(); }
catch (Exception ex)
{
tran.Rollback}
cmd.CommandType = CommandType.Text;
//cmd.CommandText = "rollback";
tran.Rollback()
cmd.ExecuteNonQuery();
}
呵呵....
关于oracle的话,可以参考如下:using (IDbCommand cmd = conn.CreateCommand())
{
IDbTransaction tran = conn.BeginTransaction();
cmd .Connection = conn;
cmd .Transaction = tran;
try
{
cmd.CommandType = CommandType.Text;
cmd.CommandText = "Insert into.....";
cmd.ExecuteNonQuery(); }
catch (Exception ex)
{
tran.Rollback}
cmd.CommandType = CommandType.Text;
//cmd.CommandText = "rollback";
tran.Rollback()
cmd.ExecuteNonQuery();
}
如下:using (IDbCommand cmd = conn.CreateCommand())
{
IDbTransaction tran = conn.BeginTransaction();
cmd .Connection = conn;
cmd .Transaction = tran;
try
{
cmd.CommandType = CommandType.Text;
cmd.CommandText = "Insert into.....";
cmd.ExecuteNonQuery(); }
catch (Exception ex)
{
tran.Rollback }
}
{
IDbTransaction tran = conn.BeginTransaction();
cmd .Connection = conn;
cmd .Transaction = tran;
try
{
cmd.CommandType = CommandType.Text;
cmd.CommandText = "Insert into.....";
cmd.ExecuteNonQuery();
tran.Commit();
}
catch (Exception ex)
{
tran.Rollback
}
}
cmd.CommandText 来执行啊。
你那种方式我也知道,只是想用sql语句来执行
谢谢。
下次一定实验一下。
对了
oracle好像需要设置是否自动提交,你把auto改掉试试