Mysql事务代码
/// <summary>
/// 删除相册
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public bool DeleAblumsById(long id)
{
int photo_Result = , ablums_Result = ;
string strSql_Photo = "delete from tb_photo where albumsId=" + id;
string strSql_Ablums = "delete from tb_albums where id=" + id;
MySqlTransaction tran = null;
MySqlCommand com = null;
MySqlConnection conn = null;
try
{
conn = new MySqlConnection(_ConnectionString);
conn.Open();
tran = conn.BeginTransaction();
com = new MySqlCommand(strSql_Photo, conn, tran);
photo_Result = com.ExecuteNonQuery(); com = new MySqlCommand(strSql_Ablums, conn, tran);
ablums_Result = com.ExecuteNonQuery();
if (photo_Result >= && ablums_Result > )
tran.Commit();
}
catch (Exception)
{
tran.Rollback();
}
finally
{
tran.Dispose();
conn.Close();
}
return photo_Result >= && ablums_Result > ;
}
public static int ExecuteNonQuery(List<KeyValuePair<String, IEnumerable<MySqlParameter>>> strList, string connectionString)
{
int count = ;
using (MySqlConnection con = new MySqlConnection(connectionString))
{
con.Open();
MySqlTransaction tran = con.BeginTransaction();
MySqlCommand comm = new MySqlCommand();
comm.Connection = con;
comm.Transaction = tran;
try
{
strList.ForEach(o =>
{
comm.CommandText = o.Key;
IEnumerable<MySqlParameter> para = o.Value;
if (para != null)
{
foreach (var pa in para)
comm.Parameters.Add(pa);
}
count += comm.ExecuteNonQuery();
comm.Parameters.Clear();
});
tran.Commit();
return count;
}
catch (Exception)
{
tran.Rollback();
return count;
}
}
}
Mysql事务代码的更多相关文章
- PHP处理MySQL事务代码
php使用mysqli进行事务处理 <?php$db = new mysqli("localhost","root",""," ...
- Mysql基础代码(不断完善中)
Mysql基础代码,不断完善中~ /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限 ...
- MySQL事务的的介绍及使用
事务的特性 1.原子性(Atomicity):原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生. 2.一致性(Consistency):在一个事务中,事务前后数据的完整性必 ...
- mysql事务隔离级别详解和实战
A事务做了操作 没有提交 对B事务来说 就等于没做 获取的都是之前的数据 但是 在A事务中查询的话 查到的都是操作之后的数据 没有提交的数据只有自己看得到,并没有update到数据库. 查看InnoD ...
- 为什么mysql事务回滚后, 自增ID依然自增
事务回滚后,自增ID仍然增加,回滚后,自增ID仍然增加.比如当前ID是7,插入一条数据后,又回滚了.然后你再插入一条数据,此时插入成功,这时候你的ID不是8,而是9.因为虽然你之前插入回滚,但是ID还 ...
- 对mysql事务提交、回滚的错误理解
一.起因 begin或者START TRANSACTION开始一个事务 rollback事务回滚 commit 事务确认 人们对事务的解释如下:事务由作为一个单独单元的一个或多个SQL语句组成,如果其 ...
- mysql 事务隔离级别 详解
问题 在工作中真实遇到的问题:用python连接mysql,查询数据,同时有别的代码在更新mysql中的数据,前者是一直是保持连接的数据库,每一分钟select一次,但第二次却查不到更新后的数据?wh ...
- Golang之Mysql事务
Mysql事务 )原子性 )一致性 )隔离性 )持久性 示例代码 package main import ( "fmt" _ "github.com/go-sql-dri ...
- Hibernate事务代码规范写法
----------------siwuxie095 事务相关概念 1.什么是事务 逻辑上的一组操作,构成这组操作的各个单元,要么一起成功, 要么一起失败 2.事务的四个特性 1)原子性 2)一致性 ...
随机推荐
- FZU-1901-Period 2(KMP)
链接: https://vjudge.net/problem/FZU-1901 题意: For each prefix with length P of a given string S,if S[i ...
- ubuntu 添加字体
1. 下载自己需要安装的字体文件 eg: yaheiconsolashybrid.ttf 2. 将字体文件放在目录/home下 3. 到目录/usr/share/fonts/truetype/下建立目 ...
- jmeter-请求头需要URIEncode编译时
使用函数 ${__urldecode()} 例如 :${__urldecode(%E4%BB%93%E5%BA%93)}${__urldecode(${参数变量})}
- Java进阶知识06 Hibernate一对一单向外键关联(Annotation+XML实现)
1.Annotation 注解版 1.1.创建Husband类和Wife类 package com.shore.model; import javax.persistence.Entity; impo ...
- js--BOM对象(2)
一.window对象是整个bom的核心 二.window对象的属性: history:(有关客户访问过的url信息) 方法: back() 加载 history 对象列表中的前一个URL forwar ...
- Python基础之赋值运算符
如下图所示,假设变量a = 10, b = 20
- Mysql主从同步 异常Slave_SQL_Running: No
在刚搭建好的mysql主从节点上对从节点进行操作,导致同步异常:报错如下: 从节点执行: mysql> show slave status\G;************************* ...
- JavaWeb_(Struts2框架)Action中struts-default下result的各种转发类型
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...
- 「UVA12293」 Box Game
题目链接 戳我 \(Solution\) 这道题第一眼看样例,猜了个结论偶数\(Alice\)赢,否则\(Bob\)赢,打了一发,交了上去果不其然的\(wa\)了,第二次猜\(2\)的幂次方\(Ali ...
- Robot Framework自动化测试(一)--- 安装
所需环境: 1.python 2.robotframework https://pypi.python.org/pypi/robotframework/2.8.5#downloads 3.wxPyth ...