事务
1、事务的原子性
一组事务,要么成功;要么撤回。
2、稳定性
有非法数据(外键约束之类)?,事务撤回。
3、隔离性
事务独立运行。
一个事务处理后的结果,影响了其他事务,那么其他事务会撤回。
事务的100%隔离,需要牺牲速度。
4、可靠性
软、硬件崩溃后,InnoDB数据表驱动会利用日志文件重构修改。
可靠性和高速度不可兼得, innodb_flush_log_at_trx_commit选项 决定什么时候吧事务保存到日志里。
先关闭自动提交
set autocommit=0;
开启事务
start transaction; // or begin
提交事务
commit
放弃事务
rollback
折返点
savepoint po_1
rollback to savepoint po_1
之前的提交,之后的放弃
如果不再使用事务,开启自动提交
set autocommit =1;