ADO.NET事务处理

执行ADO.NET事务包含四个步骤

以SqlTransaction对象为例介绍:

1)调用SqlConnection对象的BeginTransaction()方法,创建一个SqlTransaction对象,标志事务开始.

2)将创建的SqlTransaction对象分配给要执行的SqlCommand的Transaction属性.

3)调用相应的方法执行SqlCommand命令.

4)调用SqlTransaction的Commit()方法完成事务,或调用Rollback()方法中止事务.

注意:在调用BeginTransaction()方法开始事务前,要打开数据库连接,否则将出现异常.

//文本框输入的值
// string txtname = textBox1.Text;
//连接数据库
string str = "data source=.; initial catalog=MySchool;uid=sa;password=";
SqlConnection con = new SqlConnection(str);

//sql语句

string sql = "insert into Grade values(‘" + textBox1.Text + "‘)";
SqlCommand cmd = new SqlCommand(sql,con);
con.Open();
//连接打开后,获取一个事务对象
SqlTransaction tr= con.BeginTransaction();
//用cmd对应的Transction属性绑定已经构建好的事务对象
cmd.Transaction = tr;
int count=cmd.ExecuteNonQuery();
if (count > 0)
{
MessageBox.Show("添加成功");
tr.Commit(); //提交事务
}
else
{
tr.Rollback(); //回滚事务
}
con.Close();

时间: 2024-11-05 13:40:46

ADO.NET事务处理的相关文章

.NET开发中的事务处理---ADO.NET级别的事务

现在我们对事务的概念和原理都有所了解了,并且作为已经有一些基础的C#开发者,我们已经熟知编写数据库交互程序的一些要点,即: (1)使用SqlConnection类的对象的Open()方法建立与数据库服务器的连接. (2)然后将该连接赋给SqlCommand对象的Connection属性. (3)将欲执行的SQL语句赋给SqlCommand的CommandText属性. (4)通过SqlCommand对象进行数据库操作. 创建一个ADO.NET事务是很简单的,需要定义一个SqlTransactio

ADO 事务

Ado.Net事务处理.在ADO.NET 中,可以使用Connection 和Transaction 对象来控制事务.若要执行事务,请执行下列操作:• 调用Connection 对象的BeginTransaction 方法来标记事务的开始.• 将Transaction 对象分配给要执行的Command的Transaction 属性.• 执行所需的命令.• 调用Transaction 对象的Commit 方法来完成事务,或调用Rollback 方法来取消事务.当然ADO.NET事务处理有优点和缺点

c# + Sql server 事务处理

事务(Transaction)是并发控制的单位,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位.通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性.在sql server+ .net 开发环境下,有两种方法能够完成事务的操作,保持数据库的数据完整性:一个就是用sql存储过程,另一个就是在ADO.NET中一种简单的事务处理:现在通过一个典型的银行转账的例子来说明一下这两个例子的用法我们先来看看sql存储过程是如何来完成事务的

.NET简谈事务、分布式事务处理

在本人的 " .NET简谈事务本质论"一文中我们从整体上了解了事务模型,在我们脑子里能有一个全局的事务处理结构,消除对数据库事务的依赖理解,重新认识事务编程模型. 今天这篇文章我们将使用.NET C#来进行事务性编程,从浅显.简单的本地事务开始,也就是我们用的最多的ADO.NET事务处理,然后我们逐渐扩大事务处理范围,包括对分布式事务处理的使用,多线程事务处理的使用. 数据库事务处理 数据库事务处理我们基本都很熟悉了,begin Transaction --end Transactio

C# 事务处理

简单事务的一个常见例子:把钱从A账户转到B账户,这涉及两项任务,即从A账户把钱取出来:把钱存入B账户.两项任务要么同时成功,要么一起失败,给予回滚,以 便保持账户的状态和原来相同.否则,在执行某一个操作的时候可能会因为停电.网络中断等原因而出现故障,所以有可能更新了一个表中的行,但没有更新相关表 中的行.如果数据库支持事务,则可以将数据库操作组成一个事务,以防止因这些事件而使数据库出现不一致. 事务的ACID属性如下: 原子性(Atomicity):事务的所有操作是原子工作单元:对于其数据修改,

sql sever 的两种写法

事务(Transaction)是并发控制的单位,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位. 通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性. 在sql server+ .net 开发环境下,有两种方法能够完成事务的操作,保持数据库的数据完整性: 一个就是用sql存储过程,另一个就是在ADO.NET中一种简单的事务处理: 现在通过一个典型的银行转账的例子来说明一下这两个例子的用法 我们先来看看sql存储过程是如何来

sql事务(Transaction)用法介绍及回滚实例

事务是将一系列操作作为一个单元执行,要么成功,要么失败,回滚到最初状态.在事务处理术语中,事务要么提交,要么中止.若要提交事务,所有参与者都必须保证对数据的任何更改是永久的.不论系统崩溃或是发生其他无法预料的事件,更改都必须是持久的.只要有一个参与者无法做出此保证,整个事务就会失败.事务范围内的所有数据更改将回滚到特定设置点. Begin TRANSACTION 语句1; If @@error<>0 Goto error 语句2; If @@error<>0 Goto error

业务的扩展:三层架构

1.看到标题首先要想到三层架构是什么?     三层架构其实为: ①表示层:负责接收用户的输入,将输出呈现给用户,          以及访问安全性验证,并对输入的数据的正确性.          有效性及呈现样式负责,但对输出的数据的正确性          不负责. ②业务逻辑性:负责系统领域业务的处理,负责逻辑性数据的生产.              处理及转换.对所输入的逻辑性数据的正确性及              有效性负责,但对输出的逻辑性数据及用户性数据的            

Asp.Net事务和异常处理:

Asp.Net事务和异常处理:一.什么是事务处理?事务处理是一组组和成逻辑工作单元的数据库操作,虽然系统中可能会出错,但事务将控制和维护每个数据库的一致性和完整性.如果在事务过程中没有遇到错误,事务中的所有修改都将永久成为数据库中的一部分,如果遇到错误,则不会对数据库进行任何修改.二.事务处理过程.1. 开始一个事务.进入“事务待命”状态.2. 在“事务待命”状态,记录事务中改变的数据库记录.此改变不能直接改变数据库中的值,必须先用一个顺序的“事务日志”记录在一边.同时,对于要改变的原始记录加锁