一、MYSQL事务
1、事务
概念:事务是一个用户定义的数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。事务可以是一条sql语句,一组sqi语句或者整个程序。
特性(ACDI):
(1)原子性:一个事务中的操作要么全做,要么全不做。
(2)一致性:事务执行的结果必须使数据库从一个一致性状态转换为另一个一致性状态。
(3)隔离性:并发执行的事务之间互不干扰。
(4)持久性:一个事务一旦提交对数据库的操作就是永久性的。(已经存储到了磁盘)
2、MYSQL的事务:
(1)如果用户不对数据库进行操作,默认情况下事务直接开始并提交(将对数据库的更新写到磁盘)。
例如:在login数据表中执行以下插入操作后:
INSERT login VALUES('mysql','事务')
执行查询语句后,数据库中已经存在数据。
(2)手动操作事务的开始和提交:
先开启事务:
START TRANSACTION
执行插入语句:
INSERT login VALUES('星期一','Monday')
此时执行查询语句,依旧能够查询到插入的数据