MYSQL 事务处理主要有两种方法

1、用 BEGIN, ROLLBACK, COMMIT来实现

BEGIN 开始一个事务

ROLLBACK 事务回滚

COMMIT 事务确认

mysql> use DEMO;
Database changed
mysql> CREATE TABLE demo_transaction_test( id int(5)) engine=innodb; # 创建数据表
Query OK, 0 rows affected (0.04 sec)
mysql> select * from demo_transaction_test;Empty set (0.01 sec)
mysql> begin; # 开始事务Query OK, 0 rows affected (0.00 sec)
mysql> insert into demo_transaction_test value(5);Query OK, 1 rows affected (0.01 sec)
mysql> insert into demo_transaction_test value(6);Query OK, 1 rows affected (0.00 sec)
mysql> commit; # 提交事务
Query OK, 0 rows affected (0.01 sec)
mysql> select * from demo_transaction_test;
+------+
| id |
+------+
| 5 |
| 6 |
+------+2 rows in set (0.01 sec)
mysql> begin; # 开始事务
Query OK, 0 rows affected (0.00 sec)
mysql> insert into demo_transaction_test values(7);
Query OK, 1 rows affected (0.00 sec)
mysql> rollback; # 回滚
Query OK, 0 rows affected (0.00 sec)
mysql> select * from demo_transaction_test; # 因为回滚所以数据没有插入+------+
| id |
+------+
| 5 |
| 6 |
+------+2 rows in set (0.01 sec)
mysql>

 

2、直接用 SET 来改变 MySQL 的自动提交模式:

文章来自 www.hezhidz.com

posted @   学无边涯  阅读(229)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示