String lastcph = "";
SqlConnection myConnection = new SqlConnection(EDb.CnnString);
myConnection.Open();
// 启动一个事务
SqlTransaction myTrans = myConnection.BeginTransaction();
// 为事务创建一个命令
SqlCommand myCommand = new SqlCommand();
myCommand.Connection = myConnection;
myCommand.Transaction = myTrans;
try
{
...
//如果我在这里 return 了,但前面有操作要不要影响数据库呢
...
myTrans.Commit();
}
catch (Exception Ex)
{
myTrans.Rollback();
} finally
{
myTrans.Dispose();
myConnection.Close();
myConnection.Dispose();
}
return null;
这样不是很麻烦吗
他应该是没有commit 前操作都会取消才对啊
try{
.... con.commit();
}
catch{
con.rollback();
}
finally
{
this.closeCon();
}
....
if(xxx)
{
con.rollback();
return; //每个return 前都要rollback了?????
}
...
con.commit();
}
catch{
con.rollback();
}
finally
{
this.closeCon();
}