workbench 手动提交事务_mysql实现事务的提交和回滚实例
mysql创建存储过程的官方语法为:
START TRANSACTION | BEGIN [WORK]
COMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE]
ROLLBACK [WORK] [AND [NO] CHAIN] [[NO] RELEASE]
SET AUTOCOMMIT = {0 | 1}
我这里要说明的mysql事务处理多个SQL语句的回滚情况。比如说在一个存储过程中启动一个事务,这个事务同时往三个表中插入数据,每插完一张表需要判断其是否操作成功,如果不成功则需要回滚,最后一张表判断其插入成功之后commit。这里需要注意的是不能直接使用事务的collback,这样是不能实现回滚的或者说可能出现意外的错误。
那么我们需要的是一个条件判断,比如loop,因为MySql默认是会自动提交的,所以我们不用担心rollback之后条件退出而没有commit。
具体mysql语句如下:
begin
loop_lable: loop
start transaction;
insert into table1(f_user_id) values(user_id);
if row_count() < 1 then
set @ret = -1;
rollback;
leave loop_label;
end if;
insert into table2(f_user_id) values(user_id);
if row_count() < 1 then
set @ret = -1;
rollback;
leave loop_label;
end if;
insert into table3(f_user_id) values(user_id);
if row_count() < 1 then
set @ret = -1;
rollback;
leave loop_label;
else
set @ret = 0;
commit;
leave loop_label;
end if;
end loop;
select @ret;
end
workbench 手动提交事务_mysql实现事务的提交和回滚实例相关推荐
- mysql 事务实例_mysql实现事务的提交和回滚实例
mysql创建存储过程的官方语法为: 复制代码 代码如下:START TRANSACTION | BEGIN [WORK] COMMIT [WORK] [AND [NO] CHAIN] [[NO] R ...
- java jdbc 回滚_java_详解Java的JDBC API中事务的提交和回滚,如果JDBC连接是在自动提交模式 - phpStudy...
详解Java的JDBC API中事务的提交和回滚 如果JDBC连接是在自动提交模式下,它在默认情况下,那么每个SQL语句都是在其完成时提交到数据库. 这可能是对简单的应用程序,但有三个原因,你可能想关 ...
- oracle表结构修改回滚,87.Oracle数据库SQL开发之 修改表内存——数据库事务的提交和回滚...
87.Oracle数据库SQL开发之 修改表内存--数据库事务的提交和回滚 数据库事务(transaction)就是一组SQL语句,这组SQL语句时一个逻辑工作单元. 要永久性的记录事务中SQL语句的 ...
- java pg数据库事务回滚,基于Postgresql 事务的提交与回滚解析
用过oracle或mysql的人都知道在sqlplus或mysql中,做一个dml语句,如果发现做错了,还可以rollback;掉,但在PostgreSQL的psql中,如果执行一个dml,没有先运行 ...
- 二十八、事务的提交与回滚演示
1.创建表 2.查询表中数据 3.开启事务START TRANSACTION; 4.插入数据 5.查看数据 6.修改数据 7.查看数据 8.回滚事务 9.查看数据 自动提交模式 自动提交模式用于决定新 ...
- mysql 提交修改_MySQL客户端、服务器端工具、sql_mode、存储引擎修改、事务的提交和回滚、隔离级别...
# ls /usr/local/mysql/bin mysql mysqladmin mysqldump 客户端程序 mysqld mysqld_safe ...
- MySQL中事务的提交和回滚机制
应用场景: 银行取钱,从ATM机取钱,分为以下几个步骤 1 登陆ATM机,输入密码: 2 连接数据库,验证密码: 3 验证成功,获得用户信息,比如存款余额等: 4 用户输入需要取款的金额,按下确认键: ...
- 事务、提交、回滚、脏读、幻读等名词解释以及事务隔离级别详解
看视频的时候,听大佬说commit.事务.脏数据等等名词,听的弟弟是一脸懵呀,今天特地搜集.整理出来了这些名词的解释了,下面我们一起看一下. 文章目录 事务:transaction 概念 四个属性(A ...
- mysql事务的提交和回滚
START TRANSACTION | BEGIN [WORK] COMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE] ROLLBACK [WORK] [AND ...
最新文章
- Scrapy爬取IT之家
- Oracle字符集问题总结
- 线程的应用-继承Thread类创建线程
- lt、le、eq、ne、ge、gt的含义
- python drop_duplicates_Pandas drop_duplicates方法不起作用
- pat乙级相当于什么水平_雅思6.5是什么水平?相当于托福多少分?
- 本周Web2.0小工具推荐[2008-08-24]
- 高级软件工程2017第2次作业—— 个人项目:四则运算题目生成程序(基于控制台)...
- 相机成像原理_照相机、摄影机的成像原理
- 喵哈哈村与哗啦啦村的大战(四)(树形DP)
- Dubbo源码解析之SPI(一):扩展类的加载过程
- python挑选以元音字母开头的单词_帮我总结一下,元音字母开头但是读音是辅音的英语单词例如uniform看上去应该是anuniform但事实是auniform的...
- 计算机网络(自顶向下方法)读书笔记----吐血整理
- 个人作业 项目alpha版本测试
- 如何使用QQ号来注册腾讯云新用户账号并完成实名认证?
- IOS编译报错:objc-class-ref........
- 【使用MATLAB 5点确定出一个椭圆并画图确定中心点坐标】
- Everything-Everything下载
- LAYDATE日历插件使用
- 中国主动电磁轴承行业市场供需与战略研究报告
热门文章
- 函数c语言桶排算法,C语言基本排序算法之桶式排序实例
- Java 蓝桥杯 时间转换
- java生成折线图,饼状图,柱形图
- fate框架找不到 flow 命令
- html video各种控制命令,HTML5 Video(视频)
- 无人驾驶服务器适合部署在哪个位置,手机位置服务器在哪里设置的
- linux设备驱动模型及其他,Linux设备驱动模型
- 公司java框架让程序员变笨_框架会使程序员变笨吗?
- 计算机教师招聘板书设计,教师编制考试:信息技术丨《WORD表格制作》教案设计...
- mysql for update缺点_有关mysql的for update以及 死锁问题