第1章关系数据库基本原理课件.ppt

上传人(卖家):三亚风情 文档编号:2953133 上传时间:2022-06-14 格式:PPT 页数:59 大小:664KB
下载 相关 举报
第1章关系数据库基本原理课件.ppt_第1页
第1页 / 共59页
第1章关系数据库基本原理课件.ppt_第2页
第2页 / 共59页
第1章关系数据库基本原理课件.ppt_第3页
第3页 / 共59页
第1章关系数据库基本原理课件.ppt_第4页
第4页 / 共59页
第1章关系数据库基本原理课件.ppt_第5页
第5页 / 共59页
点击查看更多>>
资源描述

1、高等学校大学计算机基础教育改革与实践系列教材2高等教育出版社高等教育出版社3高等教育出版社高等教育出版社 关系型数据库:是指一些相关的表和其他数据库对象的集合。在关系型数据库中,信息存放在二维表格结构的表中,一个关系型数据库包含多个数据表,每一个表包含行(记录)和列(字段)。 横的 一行 称为 一个 记录 纵的一列称为一个字段 表头 给出 字段 名 学生信息表学生信息表 表中的每行记录都必须是惟一的,而不允许出现完全相同的记录。 通过定义主键(PRIMARY KEY)来保证记录(实体)的惟一性。 要求:为了惟一标识实体的每个实例,每个数据库表都应当有一个主键,而且只能有一个主键。 提示:有时可

2、以考虑使用两个或两个以上字段的组合作为主键。主键主键主键主键 外键:一个关系型数据库可能包含多个表,可以通过外键(FOREIGN KEY)使这些表之间关联起来。如果在表A中有一个字段对应于表B中的主键,则该字段称为表A的外键。 图图1-2 1-2 主键与外键的关系主键与外键的关系主键主键外键外键B表:表:student_info表表A表:表:Result_info表表主键主键外键外键C表:表:Course_info表表 约束:在设计表时,针对表中的一个或多个字段组合设置约束条件,让SQL Server检查字段中的输入值是否符合约束条件的要求。分为两种约束: 表级约束:针对表中几个字段的约束。

3、字段级约束:针对表中一个字段的约束。 (1)PRIMARY KEY约束 作用:保证表中每条记录的惟一性。可用一个字段或多个字段(最多16个)的组合作为表的主键。用单个字段作主键,使用字段级约束;用字段组合作主键,使用表级约束。 要求:每个表只能有一个主键,且主键字段的内容不能重复和空值。 (2)FOREIGN KEY 约束 作用:保证FOREIGN KEY字段与其他表中的主键字段或具有惟一性的字段相对应,其值必须在所引用的表中存在,且与所引用的表在同一数据库中。若在外键字段中输入一个非NULL值,但该值在所引用的表中并不存在,则该记录也会被拒绝。 要求:外键字段本身的值不要求是惟一的。 (3)

4、NULL与NOT NULL约束 定义:若一个字段中允许不输入数据,则可以将该字段定义为NULL约束,若在一个字段中必须输入数据,则应当将该字段定义为NOT NULL约束。 NULL含义:既不等价于数值型数据中的0,也不等价于字符型数据中的空字符串。表示用户还没有为该字段输入值。 (4)UNIQUE约束 定义:如果一个字段值不允许重复,则应当对该字段添加UNIQUE约束。 区别:与主键约束不同的是,在UNIQUE字段中允许出现NULL值,但为保持惟一性,最多只能出现一次NULL值。 (5)CHECK约束 定义:CHECK约束用于检查一个字段或整个表的输入值是否满足指定的检查条件。在表中插入或修改

5、记录时,如果不符合这个检查条件,则这条记录将被拒绝。 (6)DEFAULT 约束 作用:用于指定一个字段的默认值,当尚未在该字段中输入数据时,该字段中将自动填入这个默认值。若对一个字段添加了NOT NULL约束,但又没有设置DEFAULT约束,就必须在该字段中输入一个非NULL值,否则将会出现错误。 规划关系数据库表有两个重要步骤: 如何确定一个字段的有效值; 如何强制实施字段的数据完整性。 数据完整性:保证关系型数据库中数据的正确性和可靠性,分为4种类型。(1) 实体完整性:Entity Integrity,用于保证关系型数据库表中的每条记录都是惟一的。 主键约束:确保实体完整性。表中的主键

6、不能取空值,也不能取重复的值。(2)域完整性:Domain Integrity,用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内。 (3)参照完整性:Referential Integrity,用于确保相关联的表间的数据保持一致。当添加、删除或修改关系型数据库表中的记录时,可以借助于参照完整性来保证相关联的表之间的数据一致性。可通过定义表的主键和外键关系来实现。(4)用户自定义完整性:(User-defined Integrity)是一种强制数据定义。 表之间的关联方式分为以下3种类型。(1)一对一关联(1:1) 设在一个数据库中有A、B两个表,对于表A中的任何一条记录,表B中只

7、能有一条记录与之对应;反过来,对于表B中的任何一条记录,表A中也只能有一条记录与之对应,则称这两个表是一对一关联的。 (2)一对多关联(1:n) 设在一个关系型数据库中有A、B两个表,对于表A中的任何一条记录,表B中可能有多条记录与之对应;反过来,对于表B中的任何一条记录,表A中却只能有一条记录与之对应,则称这两个表是一对多的关联。(a a)学生表一)学生表一(b b)学生表二)学生表二(c c)成绩表)成绩表(d d)课程表)课程表关系型数据库表的关联关系型数据库表的关联(3)多对多关联(m:n) 设一个关系型数据库中有A、B两个表,对于表A中的任何一条记录,表B中可能有多条记录与之对应;反

8、过来,对于表B中的任何一条记录,表A中也有多条记录与之对应,则称这两个表是多对多关联的。 关系规范化理论:在实现阶段指导关系型数据库的设计。1970年EFCodd提出关系型数据库设计的三条规则,通称为三范式(Normal Form),即: 。第一范式(1NF) 。第二范式(2NF) 。第三范式(3NF) 关系:3个范式有高低等级之分,3NF最高,2NF次之,1NF最低。在1NF的基础上又满足某些特性才能达到第二范式的要求,在2NF的基础上再满足一些要求才能达到第三范式的要求。 作用:用于关系数据库设计,能够简化设计过程,达到减少数据冗余、提高查询效率的目的。 定义:若一个关系型数据库表中的每一

9、字段值都是单一的,则称这个表属于第一范式。即:表中的每个字段都应当是不可再分的。 示例示例:非:非1NF1NF表,成绩字段不单一,可以再细分。表,成绩字段不单一,可以再细分。 符合符合1NF1NF的数据库表的数据库表方法方法:将:将“成绩字段成绩字段”细分为细分为4 4个单独的字段。个单独的字段。 图图1-8 1-8 符合符合1NF1NF的数据库表的数据库表示例示例:1NF1NF表,每个字段不可再细分。表,每个字段不可再细分。 定义:若一个数据库表满足第一范式的要求,且它的每个非主键字段完全依赖于主键,则称该数据库表属于第二范式。示例示例:符合:符合1NF1NF,但不符合,但不符合2NF2NF

10、部分依赖关系部分依赖关系主键主键学生信息表学生信息表student_Infostudent_Info成绩信息表成绩信息表result_Inforesult_Info主键主键主键主键图图1-11 1-11 课程信息表课程信息表course_Infocourse_Info主键主键 定义:如果一个数据库表满足第二范式的要求,而且该表中的每一个非主键字段不传递依赖于主键,则称这个数据库表属于第三范式。 传递依赖:在一个数据库表中有A、B、C三个字段,如果字段B依赖于字段A,字段C又依赖于字段B,则称字段C传递依赖于字段A,并称在该数据库表中存在传递依赖关系。 在一个数据库表中,若有一个非主键字段依赖于

11、另一个非主键字段,则该字段必然传递依赖于主键,因而该数据库表就不属于第三范式。 第三范式的实际含义:要求非主键字段之间不应该有从属关系。示例示例:符合:符合2NF2NF,但不符合,但不符合3NF3NF传递依赖关系传递依赖关系学生信息表学生信息表student_Infostudent_Info主键主键班级信息表班级信息表class_Infoclass_Info主键主键外键外键uE-R模型u数据库设计过程 E-R模型(Entity-Relationship)即实体联系模型,是1976年PPSChen提出的。这种模型用E-R图来表示实体及其联系,广泛用于数据库设计中。 一个E-R图由实体、属性和联系

12、三种基本要素组成。(1)实体:即现实世界中存在的、可以相互区别的人或事物。一个实体集合对应于数据库中的一个表,一个实体则对应于表的一行,也称为一条记录。在E-R图中,实体用矩形框表示。(2)属性:表示实体或联系的某种特征。一个属性对应于数据库表中的一列,也称为一个字段。在E-R图中,属性用椭圆表示。(3)联系:即实体之间存在的联系。在E-R图中,联系用菱形框表示。联系的类型可以是1-1、1-n、n-m等。(1)先确定实体集与联系集,把参加联系 的实体集连接起来。(2)画出诸实体的属性和联系的属性。 说明:当实体集与联系较多时,为了E-R图的整洁和可读性,有时可以略去属性。 绘制绘制E-R图的步

13、骤图的步骤 E-R图示例图示例 教师实体局部教师实体局部E-R图图 学号学号学生学生姓名姓名性别性别年龄年龄课程号课程号课程课程课程名课程名学分学分课程实体局部课程实体局部E-R图图 年龄年龄教师教师姓名姓名性别性别教师编号教师编号 E-R图示例图示例成绩成绩选修选修学号学号学生学生姓名姓名课程号课程号课程课程课程名课程名性别性别年龄年龄mn学分学分系系学生实体与课程学生实体与课程实体局部实体局部E-R图图 E-R图示例图示例年年龄龄教师教师姓姓名名讲讲授授课程号课程号课程课程课程名课程名性性别别教师编号教师编号n1学分学分教师实体与课程教师实体与课程实体局部实体局部E-R图图 E-R图综合示

14、例图综合示例选修选修学号学号学生学生姓名姓名年龄年龄教师教师姓名姓名讲授讲授课程号课程号课程课程课程名课程名性别性别年龄年龄性别性别教师编号教师编号mnn1学分学分系系成绩成绩学生实体、课程实体和学生实体、课程实体和教师实体教师实体E-R图图 数据库的设计都要经历:需求分析、概念设计、逻辑设计和物理设计几个阶段。1需求分析需求分析 分析系统的需求。主要任务:从数据库的所有用户那里收集对数据的需求和对数据处理的要求,并把这些需求写成用户和设计人员都能接受的说明书。2概念设计概念设计 将需求说明书中关于数据的需求,综合为一个统一的概念模型。步骤:(1)根据单个应用的需求,画出能反映每一应用需求的局

15、部E-R模型。(2)将局部E-R模型图合并起来,消除冗余和可能存在的矛盾,得出系统总体的E-R模型。3实现设计(逻辑设计)实现设计(逻辑设计) 将E-R模型转换为某一特定的DBMS能够接受的逻辑模式。对关系型数据库,主要完成表的关联和结构的设计。E-R图向关系数据模型的转换图向关系数据模型的转换 51高等教育出版社高等教育出版社 将将E-RE-R图转换为关系模型实际上就是将实体、图转换为关系模型实际上就是将实体、实体属性和实体之间的联系转化为关系模式,并实体属性和实体之间的联系转化为关系模式,并确定关系模式的属性和码。确定关系模式的属性和码。 1. 1. 将实体转换为关系模式将实体转换为关系模

16、式 一般将一般将E-RE-R图中的实体转化为一个关系模式。图中的实体转化为一个关系模式。实体的属性转化为关系的属性,实体的码就是关实体的属性转化为关系的属性,实体的码就是关系的码。系的码。 一对一联系(一对一联系(1:1) 52高等教育出版社高等教育出版社2. 2. 将实体间的联系转化成关系模式将实体间的联系转化成关系模式 实体之间的联系比较复杂,可以按照以下规则转换。实体之间的联系比较复杂,可以按照以下规则转换。(1 1)1:11:1的联系的联系 1:11:1的联系可以转换为一个独立的关系模式,也可以与的联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立

17、的关任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该系模式,则与该1:11:1联系相连的各实体的码以及联系本身的联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码都可以是该关系属性均转换为关系的属性,每个实体的码都可以是该关系模式的候选码。如果与某一端对应的关系模式合并,则需模式的候选码。如果与某一端对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。大多情况下采用后一种方式。本身的属性。大多情况下采用后一种方式。 一对多联系(一对多联系(1:n) 53高等教育出版社高等教育

18、出版社(2 2)1:n1:n的联系的联系 1:n1:n的联系有两种转换方式的联系有两种转换方式:可以转换为一个独可以转换为一个独立的关系模式,也可以与立的关系模式,也可以与n n端对应的关系模式合并。端对应的关系模式合并。 如果转换为一个独立的关系模式,则与该联系如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码是系的属性,而关系的码是n n端实体的码。端实体的码。 也可以与也可以与n n端对应的关系模式合并,只需要将端对应的关系模式合并,只需要将1 1端的关键字及联系的属性合并入多端的关系模式。

19、端的关键字及联系的属性合并入多端的关系模式。54高等教育出版社高等教育出版社例如:例如:“讲授讲授”联系是一对多联系,与之相连的两个实体为联系是一对多联系,与之相连的两个实体为“课程课程”实体和实体和“教师教师”实体,这两个实体可以分别转换为实体,这两个实体可以分别转换为对应的关系模式:对应的关系模式: 课程(课程(课程号课程号,课程名,学分),课程名,学分) 课程号是主键课程号是主键 教师(教师(教师编号教师编号,姓名,性别,年龄),姓名,性别,年龄) 教师编号是主键教师编号是主键年年龄龄教师教师姓姓名名讲讲授授课程号课程号课程课程课程名课程名性性别别教师编号教师编号n1学分学分55高等教育

20、出版社高等教育出版社 对于对于“讲授讲授”联系,可以转换为一个关系模式,其属性联系,可以转换为一个关系模式,其属性由由“课程课程”实体的码实体的码“课程号课程号”,“教师教师”实体的的码实体的的码“教教师编号师编号”以及此联系的属性组成,作为多端的以及此联系的属性组成,作为多端的“课程课程”实体实体的码成为关系模式的码。由于联系没有属性,关系模式为:的码成为关系模式的码。由于联系没有属性,关系模式为: 讲授(讲授(课程号课程号,教师编号),教师编号) 课程号是主键,教师编号是外键课程号是主键,教师编号是外键 也可以采用另一种方式,即也可以采用另一种方式,即“讲授讲授”联系不用转换为一联系不用转

21、换为一个单独的关系模式,而是将个单独的关系模式,而是将“教师教师”实体的码和联系的属性实体的码和联系的属性合并入课程实体对应的关系模式中,课程关系模式为:合并入课程实体对应的关系模式中,课程关系模式为: 课程(课程(课程号课程号,课程名,学分,教师编号),课程名,学分,教师编号) 课程号是主键,教师编号是外键课程号是主键,教师编号是外键56高等教育出版社高等教育出版社即:即: 课程(课程(课程号课程号,课程名,学分),课程名,学分) 教师(教师(教师编号教师编号,姓名,性别,年龄),姓名,性别,年龄) 讲授(讲授(课程号课程号,教师编号),教师编号)或者:或者: 课程(课程(课程号课程号,课程

22、名,学分,教师编号),课程名,学分,教师编号) 教师(教师(教师编号教师编号,姓名,性别,年龄),姓名,性别,年龄)年年龄龄教师教师姓姓名名讲讲授授课程号课程号课程课程课程名课程名性性别别教师编号教师编号n1学分学分 多对多联系(多对多联系(m:n) 57高等教育出版社高等教育出版社(3 3)m:nm:n的联系的联系 m:nm:n联系转换为一个关系模式,与该联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属联系相连的各实体的码以及联系本身的属性均转换为关系的属性,关系的码为各实性均转换为关系的属性,关系的码为各实体码的组合。体码的组合。 例如,例如,“选修选修”联系是一个多对多联

23、系,联系是一个多对多联系,成绩成绩选修选修学号学号学生学生姓名姓名课程号课程号课程课程课程名课程名性别性别年龄年龄mn学分学分系系将其转换成一个关系模式,关系模式的属性由将其转换成一个关系模式,关系模式的属性由“学生学生”实实体的码、体的码、“课程课程”实体的码以及联系的属性组成,关系模实体的码以及联系的属性组成,关系模式的码由式的码由“学生学生”实体的码和实体的码和“课程课程”实体的码组合而成,实体的码组合而成,转换后的关系模式为:转换后的关系模式为: 选课(选课(学号学号,课程号课程号,成绩),成绩) (学号(学号+ +课程号)是主键课程号)是主键数据模型的优化数据模型的优化 58高等教育

24、出版社高等教育出版社 完成完成E-RE-R图向关系数据模型的转换之后,还需要对数据模型进行优图向关系数据模型的转换之后,还需要对数据模型进行优化,修改、调整数据模型的结构,提高数据库的性能。化,修改、调整数据模型的结构,提高数据库的性能。 (1 1)确定数据依赖。按需求分析阶段得到的语义,分别写出每个)确定数据依赖。按需求分析阶段得到的语义,分别写出每个关系模式内部各属性之间的数据依赖以及不同关系模式属性之间的数关系模式内部各属性之间的数据依赖以及不同关系模式属性之间的数据依赖。据依赖。 (2 2)对于各个关系模式之间的数据依赖进行极小化处理,消除冗)对于各个关系模式之间的数据依赖进行极小化处

25、理,消除冗余的联系。余的联系。 (3 3)按照数据依赖的理论对关系模式逐一进行分析,考查是否存)按照数据依赖的理论对关系模式逐一进行分析,考查是否存在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别属于第几范式。属于第几范式。 (4 4)按照需求分析阶段得到的信息要求和处理要求,分析这些模)按照需求分析阶段得到的信息要求和处理要求,分析这些模式是否满足这些要求,确定是否要对某些模式进行合并或分解。式是否满足这些要求,确定是否要对某些模式进行合并或分解。 (5 5)对关系模式进行必要的分解或合并。)对关系模式进行必要的分解或合并。4物理设计物理设计 确定数据库的存储结构。主要任务包括:确定数据库文件和索引文件的记录格式和物理结构,选择存取方法,决定访问路径和外存储器的分配策略等。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(第1章关系数据库基本原理课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|