事务的特性:
原子性: 强调事务中的多个操作时一个整体(Atomicity)
一致性: 强调数据库中不会保存不一致状态性(Consistency)
隔离性: 强调数据库中事务之间相互不可见(Isolation)
持久性: 强调数据库能永久保存数据,一旦提交就不可撤销(Durability)
模式
MySQL数据库默认采用自动提交(autocommit)模式, 也就是说修改数据(insert、update、delete)的操作会自动的触发事务,完成事务的提交或者回滚
开启事务使用 begin 或者 start transacti开启事务后执行修改命令,变更数据会保存到MySQL服务端的缓存文件中,而不维护到物理表中
MySQL数据库默认采用自动提交(autocommit)模式,如果没有显示的开启一个事务,那么每条sql语句都会被当作一个事务执行提交的操作
参数设置
当设置autocommit=0就是取消了自动提交事务模式,直到显示的执行commit和rollback表示该事务结束。
set autocommit = 0 表示取消自动提交事务模式,需要手动执行commit完成事务的提交on;
回滚事务使用 rollback;