在C#中开启事务的步骤

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

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

03.调用相应的方法执行SqlCommand命令。

04.调用SqlTransaction的Commit()方法完成事务。或调用Rollback()方法终止事务。

4.在进行事务操作中的注意点

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

02.如果在事务的Commit()方法或RollBack()方法执行前数据库连接断开或关闭,则事务将回滚。

//准备连接字符串string str = "data source=.;initial catalog=Myschool;uid=sa;pwd=123";//创建数据库连接对象SqlConnection con = new SqlConnection(str);//sql语句:添加一条记录到年级表string sql = "insert into grade values(@gradename)";//创建SqlParameter对象,设置参数SqlParameter sp = new SqlParameter("@gradename", txtgradename.Text);//创建命令对象SqlCommand cmd = new SqlCommand(sql, con);//通过Parameter集合的add()方法天填充参数集合cmd.Parameters.Add(sp);//打开连接con.Open();//默认让SqlTransaction对象为空SqlTransaction trans = null;//开启事务:标志事务的开始trans = con.BeginTransaction();try{//将创建的SqlTransaction对象分配给要执行的sqlCommand的Transaction属性cmd.Transaction = trans;//执行sql如果添加成功放回1int count=cmd.ExecuteNonQuery();if (count > 0){MessageBox.Show("成功");//事务提交trans.Commit();}else {MessageBox.Show("失败");//事务回滚trans.Rollback();}}catch (Exception){//如果某个环节出现问题,则将整个事务回滚trans.Rollback();}

转载于:https://www.cnblogs.com/jiuyueBlog/p/9109860.html

C# 事务的创建,提交和回滚相关推荐

  1. 数据库事务开启,提交与回滚

    概述 事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位. 基于事务的原子性.一致性.隔离性和持续性特征,可以将相关的数据操作定义到一个事务当中.如果操作过程中 ...

  2. MySQL数据库的事务开启,提交和回滚

    事务(transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位. 基于事务的原子性.一致性.隔离性和持续性特征,可以将相关的数据操作定义到一个事务 ...

  3. 事物的开始和结束命令分别是什么_什么是事务事务中的提交和回滚是什么意思...

    展开全部 1.事务就是指准备要做的或e5a48de588b662616964757a686964616f31333431356631所做的事情,在计算机语言中是指访问并可能更新数据库中各种数据项的一个 ...

  4. 二十八、事务的提交与回滚演示

    1.创建表 2.查询表中数据 3.开启事务START TRANSACTION; 4.插入数据 5.查看数据 6.修改数据 7.查看数据 8.回滚事务 9.查看数据 自动提交模式 自动提交模式用于决定新 ...

  5. oracle表结构修改回滚,87.Oracle数据库SQL开发之 修改表内存——数据库事务的提交和回滚...

    87.Oracle数据库SQL开发之 修改表内存--数据库事务的提交和回滚 数据库事务(transaction)就是一组SQL语句,这组SQL语句时一个逻辑工作单元. 要永久性的记录事务中SQL语句的 ...

  6. RocketMQ源码分析之RocketMQ事务消息实现原下篇(事务提交或回滚)

    本文将重点分析RocketMQ Broker如何处理事务消息提交.回滚命令,根据前面的介绍,其入口EndTransactionProcessor#proce***equest: OperationRe ...

  7. Oracle数据库事务回滚和提交,数据库 事务提交和回滚

    事务  -  (transaction / tx) 原子性操作性(不可以分割的操作) - 要么全做, 要么全不做 事务的特点  -  ACID 特性 A - atomicity  原子性 : 不可分割 ...

  8. mysql数据库回滚日志_MySQL中是如何实现事务提交和回滚的?

    什么是事务 事务是由数据库中一系列的访问和更新组成的逻辑执行单元 事务的逻辑单元中可以是一条SQL语句,也可以是一段SQL逻辑,这段逻辑要么全部执行成功,要么全部执行失败 举个最常见的例子,你早上出去 ...

  9. java jdbc 回滚_java_详解Java的JDBC API中事务的提交和回滚,如果JDBC连接是在自动提交模式 - phpStudy...

    详解Java的JDBC API中事务的提交和回滚 如果JDBC连接是在自动提交模式下,它在默认情况下,那么每个SQL语句都是在其完成时提交到数据库. 这可能是对简单的应用程序,但有三个原因,你可能想关 ...

  10. 数据库 事务提交和回滚

    事务  -  (transaction / tx) 原子性操作性(不可以分割的操作) - 要么全做, 要么全不做 事务的特点  -  ACID 特性 A - atomicity  原子性 : 不可分割 ...

最新文章

  1. 面试:5 亿整数的大文件,来排个序?
  2. docker 与tomcat整合
  3. continue和pass測试
  4. 如何测试一个财务软件系统,对比测试工具平台让财务测试飞起来
  5. 表单校验方式(手机号,固定电话,邮箱,营业执照,银行卡号)
  6. 【渝粤题库】广东开放大学 婚姻家庭法 形成性考核
  7. 【51单片机快速入门指南】4.3.1: MPU6050调用DMP库获取四元数和欧拉角
  8. mysql列调换位置_mysql互换表中两列数据方法
  9. 3650m5设置u盘启动_联想和华硕笔记本重装系统时新BIOS无法设置u盘启动怎么办
  10. mac M1 IDEA配置SVN
  11. 常用矢量图有哪些格式?AI文件存储为psd分层
  12. Java实现FTP文件上传和下载
  13. 风尚云网学百度地图之react中引入百度地图
  14. HTL/TTL转光纤模块
  15. 农产品区块链溯源:疫情催使下的农产品认知升级
  16. Hadoop 新手填坑指南
  17. Android 12 Watchdog(4) Trace生成过程
  18. 【监控】Prometheus(普罗米修斯)监控概述
  19. 软工实践第二次作业-黄紫仪
  20. Opencv 图片处理

热门文章

  1. Unity3D学习笔记(二十七):MVC框架下的背包系统(2)
  2. [转载] LINUS:利用二级指针删除单向链表
  3. 哒哒的马蹄,由心而生的感情
  4. 解决远程桌面无法复制黏贴
  5. 20145210 20145226实验一
  6. MFC 窗口过程理解
  7. laravel使用artisan报错SQLSTATE[42S02]: Base table or view not found: 1146
  8. stl_algorithm算法之排序算法
  9. 第10题 正则表达式匹配(动态规划)
  10. Xamarin iOS教程之使用按钮接接收用户输入