2017年1月12日

摘要: 首先,为什么需要事务? 最典型的例子是银行转账,因为不是原子性的操作(一个账号扣款,另一个账号收款),所以存在出现问题的可能,如这边扣款完毕,然后程序挂掉,收款方又没收到,这钱就蒸发了。 为了保证流程按照我们预计的执行,所以出现了事务的概念。 事务的特性:ACID。 原子性、一致性、隔离性、持久性。 注意,这是在一个事务操作中表现出来的特性,由技术手段来完成,而不是数据库真的有这些特性。 原... 阅读全文
posted @ 2017-01-12 16:59 LarryZeal 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 数据库:Oracle 前提:假定100万行的记录,在最后一行有一个数据a=1。 实验:你在9:00的时候查找数据,9:05的时候查到最后一行;但是,在9:01的时候有人修改了最后一行数据并提交(commit),改为a=2,瞬间完成。 问题:在9:05的时候你查到的a的值是多少? 对于Oracle数据库来说,永远是请求那一刻的数据。所以答案是1。 原理:用户发起的查询带有时间戳SCN,查询的... 阅读全文
posted @ 2017-01-12 11:28 LarryZeal 阅读(231) 评论(0) 推荐(0) 编辑

导航