mysql学习之事务处理

1、事务处理:用来维护数据的完整性、保证成批的MySql操作要么完全执行、要么完全不执行。


2、使用ROLLBACK命令来撤销mysql语句

实例:

[1]select * from task;//表数据不为空

[2]start transaction;//标识事务的开始

[3]delete from task;//删除表中所有数据

[4]select * from task;//表数据为空

[5]Rollback; //回退到start transaction 此语句后事务将自动关闭

[6]select * from task;//与[1]数据相同


只能回退Insert、update、delete操作,不能回退Create、Drop、Select操作


3、使用COMMIT语句


   一般的Sql语句是隐含提交,也就是自动提交,不需要COMMIT语句,但是在事务处理模块中不会自动提交。

使用COMMIT语句来明确提交。

  Start transaction;

  delete from task where czid = 0001;

  delete from task_detail where czid = 0001;

  COMMIT;//此语句后事务将自动关闭。

当第一个delete成功,第二个delete失败,事务会自动撤退第一个delete。

这样能保证delete操作完整执行。


4、使用保留点SavePoint语句

  

创建保留点

SavePoint delete1; 保留点名字需唯一


RollBack To delete1; 回退到delete1.


保留点可根据自己的需要任意设置,以便灵活的回退


释放保留点:在执行完RollBack 或 COMMIT 后会自动释放。

mysql5以后,可用Release savepoint释放


5、更改默认提交

  sql语句对表进行操作时,都是立即提交生效的。若有需要明确规定mysql不自动提交则使用

SET autocommit=0;

//为0时,不会自动提交,直到此值被设置为真时自动提交。autocommit针对每个连接,不是服务器







  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习MySQL事务的步骤如下: 1. 了解事务的基本概念:首先,了解事务的定义、特性和重要性。熟悉ACID特性,并理解事务的原子性、一致性、隔离性和持久性。 2. 确认数据库支持事务MySQL是一种支持事务的关系型数据库管理系统。确保你使用的MySQL版本支持事务,并且数据库引擎设置为支持事务的引擎,如InnoDB。 3. 了解事务控制语句:MySQL提供了一些用于管理事务的控制语句,如BEGIN、COMMIT和ROLLBACK。学习这些语句的语法和用法,并理解它们在事务中的作用。 4. 实践事务的基本操作:通过编写简单的SQL语句来执行事务操作。尝试在事务中执行多个数据库操作,并观察它们的结果。练习使用COMMIT提交事务和ROLLBACK回滚事务。 5. 理解并发控制和锁定机制:了解并发事务可能导致的问题,如脏读、不可重复读和幻读。学习MySQL中的锁定机制,包括共享锁和排他锁,以及它们的应用场景。 6. 处理异常和错误:学习如何处理事务中可能发生的异常和错误。了解异常处理和错误处理的最佳实践,以确保事务的正确性和可靠性。 7. 进一步学习高级事务概念:一旦掌握了基本事务概念,可以进一步学习MySQL中的高级事务概念,如保存点(Savepoint)、嵌套事务事务隔离级别。 通过以上步骤,你将能够理解和应用MySQL中的事务概念,并能够编写和管理复杂的数据库事务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值