在Net程序中,一旦发生错误,如何实现事务的长尾词回滚操作?

2026-03-30 14:101阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计355个文字,预计阅读时间需要2分钟。

在Net程序中,一旦发生错误,如何实现事务的长尾词回滚操作?

如果存在大量数据插入的情况,使用事务控制程序的逻辑比较实用,成功则全部插入,失败则回滚到特定点。代码示例:

csharpprotected void Button1_Click(object sender, EventArgs e){ try { using (var transaction=connection.BeginTransaction()) { foreach (var data in dataList) { // 插入数据逻辑 // ... } transaction.Commit(); } } catch (Exception ex) { using (var transaction=connection.BeginTransaction(IsolationLevel.ReadCommitted)) { // 回滚到特定点 // ... transaction.Rollback(); } }}


如果存在多条数据插入的情况下,使用事务控制程序的逻辑比较实用的,成功则全部插入,失败一条则回滚到特定点;

代码如下:

protected void Button1_Click(object sender, EventArgs e)

{

if (this.TextBox1.Text!="")

{

SqlConnection sc= help.con();

sc.Open();

// string str = "insert into cs(Fcate) values('"+this.TextBox1.Text.Trim()+"')";

SqlTransaction tr= sc.BeginTransaction();//定义事务

SqlCommand cmd = new SqlCommand("cs_Insert", sc);

cmd.CommandType = CommandType.StoredProcedure;

cmd.Transaction = tr;//设置事务

cmd.Parameters.Add(new SqlParameter("@fcate", SqlDbType.VarChar,128)).Value=this.TextBox1.Text.Trim();

try

{

在Net程序中,一旦发生错误,如何实现事务的长尾词回滚操作?

cmd.ExecuteNonQuery();

//先执行某个事,执行完有错误后会被catch捕捉,执行回滚,否则会提交事务;

tr.Commit();

sc.Close();

this.Bind();

}

catch

{

Response.Write("<script>alert('执行事务回滚')</script>");

tr.Rollback();//回滚事务

}

}

}

截图:

本文共计355个文字,预计阅读时间需要2分钟。

在Net程序中,一旦发生错误,如何实现事务的长尾词回滚操作?

如果存在大量数据插入的情况,使用事务控制程序的逻辑比较实用,成功则全部插入,失败则回滚到特定点。代码示例:

csharpprotected void Button1_Click(object sender, EventArgs e){ try { using (var transaction=connection.BeginTransaction()) { foreach (var data in dataList) { // 插入数据逻辑 // ... } transaction.Commit(); } } catch (Exception ex) { using (var transaction=connection.BeginTransaction(IsolationLevel.ReadCommitted)) { // 回滚到特定点 // ... transaction.Rollback(); } }}


如果存在多条数据插入的情况下,使用事务控制程序的逻辑比较实用的,成功则全部插入,失败一条则回滚到特定点;

代码如下:

protected void Button1_Click(object sender, EventArgs e)

{

if (this.TextBox1.Text!="")

{

SqlConnection sc= help.con();

sc.Open();

// string str = "insert into cs(Fcate) values('"+this.TextBox1.Text.Trim()+"')";

SqlTransaction tr= sc.BeginTransaction();//定义事务

SqlCommand cmd = new SqlCommand("cs_Insert", sc);

cmd.CommandType = CommandType.StoredProcedure;

cmd.Transaction = tr;//设置事务

cmd.Parameters.Add(new SqlParameter("@fcate", SqlDbType.VarChar,128)).Value=this.TextBox1.Text.Trim();

try

{

在Net程序中,一旦发生错误,如何实现事务的长尾词回滚操作?

cmd.ExecuteNonQuery();

//先执行某个事,执行完有错误后会被catch捕捉,执行回滚,否则会提交事务;

tr.Commit();

sc.Close();

this.Bind();

}

catch

{

Response.Write("<script>alert('执行事务回滚')</script>");

tr.Rollback();//回滚事务

}

}

}

截图: