第 4讲数据库设计基础基本概念
问题在软件开发过程中,数据库如何设计?
在设计过程中要注意什么问题?
实体与联系
实体,客观存在并可以相互区分的事物称为实体
属性,实体所具有的某一特性
联系,就是实体与实体之间的联系
联系的类型
E-
R
图选课学生 课程学号 姓名 年龄 课程号 课程名 学分课程号 成绩学名关系模型
关系模型概念
E-R模型转换为关系模型方法,是一个实体或联系转换为一个表,属性就是表的列(字段)
关系模型规范化
I范式 ( 1NF)
每个属性都是不可再分的基本数据项,则称该关系是 I范式。
关键字是能唯一标识每一行的列或列的组合。一个表可能有多个关键字,选定其中一个作为 主关键字。 其余的称为 候选关键字 。
关系模型
函数依赖完全函数依赖部分函数依赖传递函数依赖
II范式 ( 2NF)
II范式首先是 I范式,而且每一个非主属性完全依赖于任何关键字 。
III范式( 3NF)
III范式首先是 II范式,且关系中的任何一个非主属性都不传递依赖于任何关键字数据完整性
数据完整性数据完整性就是关系 ( 表 ) 中数据的正确性和一致性 。
域完整性 ( 用户定义的完整性 ),
要求表中列的值满足一定要求 。 如性别列的值只能是男或女 。
表完整性 ( 实体完整性 ),要求表中的行有一个唯一标识符,即表有主关键字 。
参照完整性 (引用完整性),要求有关系的表数据保持一致。
外关键字
(
外键
)
外关键字 ( 外键 )
外键作用,
u 1.当在从表作 Insert时,要保证外关键字的值一定在主表中存在 。
u 2.当在主表中修改了主关键字值,
则在从表中要同步修改,或禁止修改主表 。
u 3.当在从表中修改外关键字值,
要保证修改的值在主表中存在 。
4.当删除主表记录,要注意从表中是否引用主关键字。若有,则禁止删除或同步删除从表记录。
练习
练习对图书借阅管理作简单的需求分析,
建立实体关系模型,画 E-R图,然后转换为合理的数据库表 。
要求:
1,确定各表主键
2,按照 3NF的要求验证表结构是否合理
3,确定表间关系,明确外键 。
4,考虑数据完整性本节小节
实体和关系模型 。
E-R图三要素。
关系模型要规范到 3NF、主键、外键
保证数据完整性。
问题在软件开发过程中,数据库如何设计?
在设计过程中要注意什么问题?
实体与联系
实体,客观存在并可以相互区分的事物称为实体
属性,实体所具有的某一特性
联系,就是实体与实体之间的联系
联系的类型
E-
R
图选课学生 课程学号 姓名 年龄 课程号 课程名 学分课程号 成绩学名关系模型
关系模型概念
E-R模型转换为关系模型方法,是一个实体或联系转换为一个表,属性就是表的列(字段)
关系模型规范化
I范式 ( 1NF)
每个属性都是不可再分的基本数据项,则称该关系是 I范式。
关键字是能唯一标识每一行的列或列的组合。一个表可能有多个关键字,选定其中一个作为 主关键字。 其余的称为 候选关键字 。
关系模型
函数依赖完全函数依赖部分函数依赖传递函数依赖
II范式 ( 2NF)
II范式首先是 I范式,而且每一个非主属性完全依赖于任何关键字 。
III范式( 3NF)
III范式首先是 II范式,且关系中的任何一个非主属性都不传递依赖于任何关键字数据完整性
数据完整性数据完整性就是关系 ( 表 ) 中数据的正确性和一致性 。
域完整性 ( 用户定义的完整性 ),
要求表中列的值满足一定要求 。 如性别列的值只能是男或女 。
表完整性 ( 实体完整性 ),要求表中的行有一个唯一标识符,即表有主关键字 。
参照完整性 (引用完整性),要求有关系的表数据保持一致。
外关键字
(
外键
)
外关键字 ( 外键 )
外键作用,
u 1.当在从表作 Insert时,要保证外关键字的值一定在主表中存在 。
u 2.当在主表中修改了主关键字值,
则在从表中要同步修改,或禁止修改主表 。
u 3.当在从表中修改外关键字值,
要保证修改的值在主表中存在 。
4.当删除主表记录,要注意从表中是否引用主关键字。若有,则禁止删除或同步删除从表记录。
练习
练习对图书借阅管理作简单的需求分析,
建立实体关系模型,画 E-R图,然后转换为合理的数据库表 。
要求:
1,确定各表主键
2,按照 3NF的要求验证表结构是否合理
3,确定表间关系,明确外键 。
4,考虑数据完整性本节小节
实体和关系模型 。
E-R图三要素。
关系模型要规范到 3NF、主键、外键
保证数据完整性。