主键和唯一的区别
- 主键:唯一、不为空、只能有一个、可以组合但不推荐
- 唯一:唯一、可为空、可以多个、可以组合但不推荐
外键
- 要求在从表设置外键关系
- 从表的外键列的类型和主表的关联列的类型要求一致或兼容
- 主表的关联列必须时一个key
- 插入数据时,先插入主表再插入从表
- 删除数据时,先删除从表再删除主表
事务
- 原子性:事务不可分割,要么全执行要么全不执行
- 一致性:从一个一致状态切换到另一个一致状态
- 隔离性:一个事务的执行不受其他事务的干扰
- 持久性:一个事务的提交就会永久改变数据库的数据
事务的创建
- 隐式的事务:insert update delete
- 显式事务 :
- 关闭自动提交事务 set autocommit = 0;
- start transaction
- 编写事务中的sql语句(select insert update delete)
- commit;或者 rollback;