一、范式理论
范式可以避免数据冗余,减少数据库的空间,减轻维护数据完整性的麻烦。
- 第一范式:强调列要具有原子性,不可拆分性(最小)
- 第二范式:记录的唯一性约束
- 第三范式:强调属性冗余性的约束,不能由其他列计算得来
- 很多时候也会违反
二、数据完整性
- 实体完整性 - 每个实体都是独一无二的
- 主键(primary key) / 唯一约束 / 唯一索引(unique)
- 引用完整性(参照完整性)- 关系中不允许引用不存在的实体
- 外键(foreign key)
- 域完整性 - 数据是有效的
- 数据类型及长度约束
- 非空约束(not null)
- 默认值约束(default)
- 检查约束(check)
- 在
MySQL
数据库中,检查约束并不起作用
- 在
三、数据一致性
事务
-
MYSQL
是以个服务器/客户端(CS)架构的软件,对于同一个服务器来说,可以有若干个客户端与之连接,每个客户端与服务器连接上后,就可以称之为一个会话。 -
事务: 事务中可能包含一个或多个
sql
语句,一系