C# 使用MySQL事务的使用方法

//使用事务来处理多条数据,如果不成功则回滚

public void getCheckListSubmit()
{
string _conStr = "................";//连接字符串
OdbcConnection _odbcCon = new OdbcConnection(_conStr);
_odbcCon.Open();

OdbcTransaction trans = _odbcCon.BeginTransaction(IsolationLevel.ReadCommitted);
OdbcCommand cmd = new OdbcCommand();
cmd.Connection = trans.Connection;
cmd.Transaction = trans;

string sqlStr = "";
try
{
sqlStr = ".................";

cmd.CommandText = sqlStr;
cmd.ExecuteNonQuery();

sqlStr2 = ".................";
cmd.CommandText = sqlStr2;
cmd.ExecuteNonQuery();

}
catch
{
trans.Rollback();
hidsysMsg.Value = "Insert Failed";
_odbcCon.Close();
return;
}
trans.Commit();
hidsysMsg.Value = "Insert Succeeded";
_odbcCon.Close();

}

时间: 2024-10-31 02:27:38

C# 使用MySQL事务的使用方法的相关文章

数据库-mysql事务

MySQL 事务 MySQL 事务主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务! 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务. 事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行. 事务用来管理 insert,update,delete 语句 一般来说,事务是必须满足4个条件(A

MySQL 事务

MySQL 事务 MySQL 事务主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务! 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务. 事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行. 事务用来管理 insert,update,delete 语句 一般来说,事务是必须满足4个条件(A

Spring、Ibatis结合MySQL数据库的使用方法

Ibatis是MyBatis的前身,它是一个开源的持久层框架.它的核心是SqlMap--将实体Bean跟关系数据库进行映射,将业务代码和SQL语句的书写进行分开.Ibatis是"半自动化"的ORM持久层框架.这里的"半自动化"是相对Hibernate等提供了全面的数据库封装机制的"全自动化"ORM实现而言的,"全自动"ORM实现了POJO与数据库表字段之间的映射并且实现了SQL的自动生成和执行.而Ibatis的着力点,则在于P

MySQL 实现双向复制的方法指南

MySQL 实现双向复制的方法指南 投稿:hebedich 字体:[增加 减小] 类型:转载 这篇文章主要介绍了MySQL 实现双向复制的方法指南,本文包括:主机配置,从机配置,建立主-从复制,建立双向复制,需要的朋友可以参考下 简介 我知道有很多文章和指南介绍在互联网上实现主-从复制.在主-从复制中,主机影响从机.但从数据库中的任何更改不会影响主数据库,这篇文章将帮助你实现双向复制.(即,无论是主机还是从机的更改都将影响这两个服务器). 背景 你能参考Aadhar Joshi的这篇文章实现主从

MySQL事务内幕与ACID

MySQL的事务实现严格遵循ACID特性,即原子性(atomicity),一致性(consistency),隔离性(isolation),持久性(durability).为了避免一上来就陷入对ACID的概念理解,我们直接先谈MySQL事务实现机制. MySQL提供了两种事务型的存储引擎:InnoDB和NDB Cluster.另外还有一些第三方存储引擎也支持事务,比较知名的包括XtraDB和PBXT.下面以InnoDB来说明. MySQL会最大程度的使用缓存机制来提高数据库的访问效率,但是万一数据

MySQL事务提交过程(一)

MySQL作为一种关系型数据库,已被广泛应用到互联网中的诸多项目中.今天我们来讨论下事务的提交过程. MySQL体系结构 由于mysql插件式存储架构,导致开启binlog后,事务提交实质是二阶段提交,通过两阶段提交,来保证存储引擎和二进制日志的一致. 本文仅讨论binlog未打卡状态下的提交流程,后续会讨论打开binlog选项后的提交逻辑. 测试环境 OS:WIN7 ENGINE: bin-log:off DB: 测试条件 set autocommit=0; -- --------------

PHP + MySQL事务操作的实际应用代码演示

以下的文章主要向大家描述的是PHP(PHP培训 php教程 ) + MySQL(MySQL认证 Mysql培训 )事务操作的实际应用代码演示,我们大家都知道在实际LAMP的应用中,一般PHP所使用的是AdoDB来对MySQL数据库进行操作,下面给出AdoDB相应的代码方便大家查阅: startTrans(); 实际,getOne所调用的查询也可以直接放到rowLock来进行,这里只是为了演示效果能更明显些. $adodb->rowLock('book', 'book_id = 123'); $b

第五章 MySQL事务,视图,索引,备份和恢复

第五章 MySQL事务,视图,索引,备份和恢复 一.事务 1.什么是事务 事务是一种机制,一个操作序列,它包含了一组数据库操作命令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求.要么都执行,要么都不执行. 事务是作为最小的控制单元来使用的,特别使用与多用户同时操作的数据库系统. 2.为什么需要事务 事务(transaction)是指将一系列数据操作捆绑成为一个整体进行统一管理,如果某一事务执行成功,则在该事务中进行的所有数据均会提交,成为数据库中永久的组成部分.如果事务执行遇到错误且

php mysql事务

这里记录一下php操作mysql事务的一些知识 要知道,MySQL默认的行为是在每条SQL语句执行后执行一个COMMIT语句,从而有效的将每条语句独立为一个事务.但是,在使用事务时,是需要执行多条sql语句的,那么针对执行多条SQL语句来完成一个事务有两种办法: 1.关闭自动提交 如果SET AUTOCOMMIT=0;也就是关闭了自动提交,那么任何commit或rollback语句都可以触发事务提交;如果SET AUTOCOMMIT=1;也就是开启了自动提交(默认值),那么必须要以begin或者