在教科书中学习事务基础与并发控制
定义事务(トランザクション)是把相关的多个更新处理归为一组,以全部生效或全部不生效之一结束的处理单位。
解说归组的处理全部正常结束后确定更新的操作叫提交(コミット),中途失败时取消更新、恢复到开始前状态的操作叫回滚(ロールバック)。为了能够撤销,DBMS 会把更新的历史记录在名为日志(ログ)的文件中。多个用户同时访问同一数据时结果可能出现矛盾,因此要实行排他控制(排他制御):给正在使用的数据加上锁(ロック),让其他处理等待。
类比就像只能把机票和酒店一起预订的套餐旅行。酒店满房的话机票也不订,两者都订到才算预订成功。
记忆钩子英语 transaction 原意是“交易”:交货和付款缺一不可,两者都完成,交易才算成立。