以下代码是在asp.net实现的事务回滚实例,仅供大家参考!
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" %>
<%@ Import Namespace="System.Data"%>
<%@ Import Namespace="System.Data.SqlClient"%>
<script language="c#" runat="server">
void Page_Load(object sender,EventArgs e){
SqlConnection Conn=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);
Conn.Open();

SqlCommand Comm=new SqlCommand();
SqlTransaction Trans;
Trans=Conn.BeginTransaction();
Comm.Connection=Conn;
Comm.Transaction=Trans;

try{
Comm.CommandText="update tblSystem set CheckBeginHour=44 where CheckType=4";
Comm.ExecuteNonQuery();
Comm.CommandText="update tblSystem set CheckBeginHour=55 where CheckType=5";
Comm.ExecuteNonQuery();

Trans.Commit();
Response.Write("事物执行成功");
}
catch{
Trans.Rollback();
Response.Write("出现错误");
}
finally{
Conn.Close();
}
}
</script>
注:
在程序设计中,有时需要同时删除两个表中的相关信息.比如,BBS(表的设计:大类一个表,所有信息一个表)中,如果删除一个大类(bigclass), 那么他大类下面的所有信息也都要删除,那么就要先后对两个表进行删除动作,但是,如果在执行操作中,突然出现宕机,断电等意想不到的情况,那么删除就不能进行下去,造成两个表的关系出现错误。.那么就需要使用事务回滚,如果在执行操作中,出现突然情况,所做操作会进行回滚!

 

 posted on 2009-12-16 16:28  vingi_苍月  阅读(1173)  评论(0编辑  收藏  举报