1.什么是事物,为什么需要事物
所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。为什么需要事务呢?例如 :银行转账的问题,从一个账号扣款并使另一个账号入账,这两个操作要么都执行,要么都不执行。所以,应该把它们看出一个事务。
2.事物四大特性(ACID)
原子性(atomicity)
一致性(consistency)
隔离性(isolation)
持久性(durability
3.隔离级别READ UNCOMMITTED 未提交读
READ COMMITTED 提交读
REPEATABLE READ 可重复读
SERIALIZABLE 可串行化
4.事物命令查看表的引擎类型,必须是innodb类型才可以使用事务。
mysql> show create table student; +---------+---------------------------------------------------------------------- -------------------------------------------------------+ | Table | Create Table | +---------+---------------------------------------------------------------------- -------------------------------------------------------+ | student | CREATE TABLE `student` ( `id` int DEFAULT NULL, `name` varchar(20) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 | +---------+---------------------------------------------------------------------- -------------------------------------------------------+ 1 row in set (0.01 sec)
开启事务后执行修改命令,变更会维护到本地缓存中,而不维护到物理表中
begin;或 start transaction;
提交事务,命令如下
将缓存中的数据变更维护到物理表中
commit;
回滚事务,命令如下
rollback;