1.表的完整性:
实体完整性:唯一性
参照完整性:主子表数据的一致性
域的完整性:类型与约束检查
用户自定义完整性:用户自己定义的约束
2.表的主键满足的三个特征:
唯一性
不能为空
不能修改
3.关系模型的概念:
关系模型的本质:一张二维表
关系名----表名
关系模式----表头(表格的描述)
元组----记录或者行
记录----实例
表----实体
属性名----列名
属性----列
字段----属性
分量----一条记录中的一个列值
非规范关系----表中有表
记录----实例
视图 ---- 视图有点像快照,可以用来查看复杂的结构,它是一张虚表,只能用于做查询用
索引----加快查询速度,不过,但索引的创建有一定的限速,超过了就会减慢降低效率
触发器---用于保证主、外键的安全性,是隐式调用的,主要是行级触发,语句触发和替代触发器
存储过程----一些SQL的集合,执行速度快,执行后会存储在数据库中,方便以后调用
4.实体
实体----客观存在的事物
属性----实体的特征
值域----属性的取值范围
码----一个实体中区别于其他实体的唯一标识属性
超码----实体的码和其他属性的组合
候选码----实体中的码有多个且这些码是不可约的。(码的集合)
5.联系
联系----实体的关联
一对一,一对多(1:n或者1:*),多对多
联系也有属性
6.E-R图
E-R图----实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
矩形框----表示实体,在框中记入实体名。
菱形框----表示联系,在框中记入联系名。
椭圆形框----表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。
连线----实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。)
7.范式
在R(u)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y,或Y函数依赖与X。
第一范式(1NF)----在关系模型中,对域添加的一个规范要求,所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项
第二范式(2NF)----要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性
第三范式(3NF)----在1NF基础上,任何非主属性不依赖于其它非主属性[在2NF基础上消除传递依赖]
巴斯-科德范式(BCNF)----在1NF基础上,任何非主属性不能对主键子集依赖[在3NF基础上消除对主码子集的依赖]
助记----
假想一个简单的两层企业组织架构(领导班子+普通员工)关键字:领导班子;普通员工:非关键字
(1)一人以岗。(一人多岗位)
(2)普通员工与单个领导之间不存在从属关系(普通员工应听领导班子不是单个领导)
(3)普通员工之间不存在从属关系(普通员工不会听普通员工的)
(bcnf)单个领导与单个领导之间不存在从属关系(领导不会听领导的)
8.设计数据库的工具
PowerDesigner
ERWin