⚠️ 自己写:只退一半(保存点)
把 TODO 补完:先扣 10,做个保存点,再扣 90,然后只退掉后面那 90,最后提交。打出甲的余额。 acct 表:3 行,一开始每人 100,总额 300 id 1 / 2 / 3 nam
阅读更多 →
自己写:出错就退,没错就交
把 TODO 补完:钱够就提交,不够就退回去。这次转的数目超过了余额。打出最后的总额和甲的余额(用 / 隔开)。 acct 表:3 行,一开始每人 100,总额 300 id 1 / 2 / 3
阅读更多 →
自己写:把这笔转账提交掉
把 TODO 补完,让转账真正生效,打出乙的余额。 acct 表:3 行,一开始每人 100,总额 300 id 1 / 2 / 3 name 甲 / 乙 / 丙 bal 100 / 10
阅读更多 →
⚠️ 报错之后,改动还在那儿
下面这段在事务里先改了一笔,接着插入一行主键重复的数据(会报错)。打出报错之后甲的余额和自己回滚之后甲的余额(用 / 隔开)。 acct 表:3 行,一开始每人 100,总额 300 id 1
阅读更多 →
⚠️ 语句报错了,事务会自动退吗
一个事务里,某条语句因为违反约束报了错。这时候【0】。
阅读更多 →
提交之后还能反悔吗
一个事务已经提交成功了。这时候想撤销它,办法是【0】。
阅读更多 →
回滚回到哪一刻
执行 ROLLBACK 之后,数据会回到【0】。
阅读更多 →
提交这个动作做了什么
一个事务执行 COMMIT 之后,它的改动【0】。
阅读更多 →
自己写:把一致性那条规矩量出来
把 TODO 补完,打出转账之前的总额和转账之后的总额(用 / 隔开)。 acct 表:3 行,一开始每人 100,总额 300 id 1 / 2 / 3 name 甲 / 乙 / 丙 bal
阅读更多 →
自己写:让它退回原样
下面这段改了一半就出错。把 TODO 补完,让总额回到原来的数。 acct 表:3 行,一开始每人 100,总额 300 id 1 / 2 / 3 name 甲 / 乙 / 丙 bal 1
阅读更多 →