在关联式资料库中,资料表与资料表之间有各种关联、条件约束,所以一个资料库是否设计的合理和资料表的设计有很大的关係,接下来介绍设计资料表时应该将哪些因素也考虑进去。
一、设计资料表应考虑因素
1 资料库的作用
首先,思考资料库内要包含哪些资料,而资料属于哪些实体物件,物件与物件之间存在的关联。
2 E-R模型
将所有要存入资料库的资料归类,整理成一个分类,而归入这个分类的资料被称为实体的属性,不同实体间存在着关联,E-R模型要将这些关联体现出来。
3 资料库空间分配
为了做到尽量不浪费资料库内的空间,每个资料行该用甚么资料类型就变得更加重要。
4 允许资料行为空
这就关係到null了,null在资料库中是比较特殊的,表示未知。虽然null本身不占用空间,但她所在的资料行是需要空间的。而资料表中有较多的null栏位时会对资料库效能带来影响,所以尽量少用允许资料行为空。
5 主索引键的问题
资料表中的资料,每一列不能有重複的标誌当主索引键。
6 条件约束
资料库中,一旦定义了所谓的条件约束,则只有满足这些条件的资料才可插入。
7 考虑是否使用索引
索引可以加快资料表中的资料撷取,可以提升资料库使用效率,所以对于在哪些资料行上,索引的使用需要去思考。
二、E-R模型
实体关联模型称E-R模型 (Entity-relationship model),构成E-R图的要素主要为实体、属型、关联
1 实体(Entity)
将真实世界的人、事、物等实体,以一个方框图来表示,
如果是弱实体,则方框外再套一层方框2 属性(Attribute)
实体拥有的特性称为属性,以椭圆形来表示属性,
属性具有多重数值时,则以双椭圆形来表示名称底下画一条底线区别,属性为主键虚椭圆形则为衍生属性(Derived attribute)3关联 ( Relationship)
实体与实体之间如果有关联,则将此关联以菱形连结两实体,使用无方向性实线来连接,且在实线旁写上关联类型( 1 : 1 , 1 : n , n : m)
双层菱形为弱实体