什么是数据库事务?事务所具有的四个特性是什么?
事务是一组不可分割的数据库操作,是数据库并发控制的基本单位,这一组操作,要么都执行,要么都不执行。(假如小明要给小红转账1000元,这个转账会涉及到两个关键操作:将小明的余额减少1000元,将小红的余额增加1000元。万一在这两个操作之间突然出现错误比如银行系统崩溃,导致小明余额减少而小红的余额没有增加,这样就不对了。事务就是保证这两个关键操作要么都成功,要么都要失败)
原子性A:事务中包含的各操作要么都做,要么都不做
一致性C:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。当数据库只包含成功事务提交的结果时,就说数据库处于一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。