mysql入门(四)
来源:互联网 发布:word电脑软件 编辑:程序博客网 时间:2024/05/18 15:23
【引言】接着上篇文章的节奏来讲
一、事务
【例题】:假设某银行的数据库,用户A给B用户B转账1000,此时A用户账号上余额应该减少1000,
此时B用户的账户应该多出1000。
但是当A操作完后,A用户的账号钱也减少了,这时突然停电了。。。B用户的钱没变;
现实当中遇到这样的事情,这就很坑了!
这时候事务就排上用场了,事务会保证两个操作要么都完成,就是成功,只要两个全没完成就失败;
事务提供了数据库在遭遇异常时,能够保证数据的一致性;
(1)事务原理:
(2)语法:
1. 开启事务start transaction,可以简写为 begin
2. 然后记录之后需要执行的一组sql
3. 提交commit
4. 如果所有的sql都执行成功,则提交,将sql的执行结果持久化到数据表内。
5. 回滚rollback
6. 如果存在失败的sql,则需要回滚,将sql的执行结果,退回到事务开始之时
7. 无论回滚还是提交,都会关闭事务!需要再次开启,才能使用。
8. 还有一点需要注意,就是事务只针对当前连接。
(3)事务的基本操作:
1.开启事务:告诉系统以下操作先不要提交到数据库中,先放到事务日志中,如果提交失败,回到start状态,成功就写入数据库,
2.进行一系列事务操作;
3.commit 或 rollback;
(4)特性:
原子性:事务是不可分割的!
一致性:保证数据在事务的执行周期内,是一致的!
隔离型:多个事务之间的干扰关系!隔离级别!
持久性:事务一旦被提交,就不可能再被回滚!
阅读全文
0 0
- mysql入门(四)
- MySQL入门学习(四)
- MySQL入门学习(四)
- MySQL入门学习(四)
- MySQL入门学习(四)
- MySQL数据库(入门)(四)
- MySQL数据库入门--读书笔记(四)
- PHP+mysql 入门级通讯录(四)
- MySQL入门学习(四)
- MySQL入门学习 四
- MySQL 入门(四)—— 数据库操作
- MySQL 入门(四)—— 数据库操作
- Mysql入门(四)之数据高级操作
- MySQL入门学习(四)检索篇
- MySQL入门学习(四)学习篇(2)
- 入门学习(四)
- Vim入门(四)
- AngularJS入门(四)
- adsfjkkdshfkasjfk
- 使用ajax提交form表单,包括ajax文件上传
- left join 和 left outer join 的区别
- mysql查询数据库中重复的字段的值
- 8月3日PHP学习笔记
- mysql入门(四)
- 要求可以根据每个学生的成绩进行由高到低的排序如果成绩相等则按照年龄由低到高排序数据的样式如下张三:19:90|李四:20:90|王五:20:80|赵六:21:100
- lintcode刷题——和大于S的最小子数组
- 关于C语言数量类型的转换
- [题解+|高能+]A+B Problem花样解法
- JAVA API 1.8中文版(百度版和谷歌版)免费下载
- RxSwift 实战操作【注册登录】
- 计算某年、某月、某日和某年、某月、某日之间的天数间隔。要求年、月、日通过键盘输入传递到程序中。
- Reflect in PHP(PHP中的反射机制)