第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通

2023-03-21
| 51页
| 167人阅读
| 0人下载
教辅

内容正文:

干锋教育 第11章数据库事务 事务的管理 。 ·分布式事务 MySQL 目录 MySQL 事务的管理 口点击查看本小节知识架构 分布式事务 口点击查看本小节知识架构 学习目标 MySQL 理解事务 掌握事务的回滚和 2 掌 属性 理解 掌握 掌握 掌握事务的隔 4 掌握分布式事彭 离级别 3 as 知识架构 MySQL 11.1事务的管理 →返回且录 11.1.1…。事务的概念和使用 11.1.2 事务的回滚 11.1.3 事务的属性 11.1.4…0 事务的隔离级别 11.1事务的管理 MySQL 11.1.1事务的概念和使用 ·在现实生活中,转账是很常见的操作,这实际上就是数据库中两个账户间的数据操 作。例如,账户A给账户B转账100元,就是账户A的金额减去100,账户B的金额加 上100,这个过程需要使用两条SQL语句完成操作,但是,若其中一条SQL语句出 现异常没有执行,则会导致两个账户的金额不同步,数据就会出现错误。 ·为了防止上述情况的发生,在MySQL中引入了事务。事务是指数据库中的一个操 作序列,它由一条或多条SQL语句所组成,这些SQL语句不可分割,只有当事务中 的所有$QL语句都被成功执行后,整个事务引发的操作才会被更新到数据库,如果 有至少一条语句执行失败,所有操作都将会被取消。 ·在使用事务前,首先要开启事务,SQL语句如下。 START TRANSACTION: ·以上语句用于开启事务,事务开启后就可以执行SQL语句。 11.1事务的管理 MySQL 11.1.1事务的概念和使用 在SQL语句执行完成后需要提交事务,SQL语句如下。 COMIT: ·以上语句用于提交事务,在ySQL中SQL语句是默认自动提交的,而事务中的操 作语句都需要使用COMMIT语句手动提交,提交完成后事务才会生效。如果不想 提交事务,ROLLBACK语句可以回滚事务,SQL语句如下。 ROLLBACK: ·以上语句用于事务回滚,但该语句只能回滚未提交的事务操作,不能回滚已提交的 事务操作。 ·接下来通过具体案例演示转账的事务操作,首先需要创建一个账户表account。. mysgl>CREATE TABLE account -> id INT PRTMARY KEY. -》 name VARCHAR (30), -> money FI.OAT -◇): Query OK,0 rows affected (0.16 scc) 11.1事务的管理 11.1.1务的概念和使用 ·在account表创建完成后向表中插入数据。 mysq1〉1NERT INO account MUES ->(1,'A',1000), -〉(2,'B',1000), ->(3,'C',1000); Qucry O,3rows affcted(0.06scc) ecords:3-Duplicates:Warnins:o ·以上执行结果证明数据插入完成。然后查看account表中的数据。 mysq1〉SHLECT*FBOM accoumt; 3rows in set(0.02sec ·从以上执行结果可以看出,总共有3个账户,存款金额都为1000。接下来通 过具体案例演示如何实现转账功能。 11.1事务的管理 MySQL 11.1.1事务的概念和使用 ·MySQL是默认自动提交事务,SHOW VARIABLES语句可以查看系统变量 autocommit的值。 mysql>SHOW VARIABLES LIKE autocommit'; Variable name Value autocommit 10W 1 row in set (0.00 sec) ·从以上执行结果可看出,MySQL事务自动提交是开启的状态。如果进行事务操作, 需要将自动提交关闭。 mysql>SET autocommit =0; Query OK,0 rows arfected (0.00 sec) ·以上执行语句中,0代表OFF,反之1代表ON。 11.1事务的管理 MySQL 11.1.1事务的概念和使用 ·通过SHOW VARIABLES语句验证自动提交是否关闭。 mysql>SHOW VARIABLES LIKE autocommit': Variable namc Valuc autocommit OFF 1 row in set (0.00 sec) ·从以上执行结果可以看出,MySQL的自动提交事务已关闭。 11.1事务的管理 MySQL 11.1.1事务的概念和使用 ·然后通过事务操作实现账户A给账户B转账100元。 mysql>START TRANSACTION: Query OK,0 rows affected (0.02 sec) mysql>UPDATE accou

资源预览图

第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通
1
第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通
2
第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通
3
第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通
4
第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通
5
第11章 数据库事务-【千锋教育】MySQL数据库从入门到精通
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。