《数据库原理及应用》-关系数据库概述要求_第1页
《数据库原理及应用》-关系数据库概述要求_第2页
《数据库原理及应用》-关系数据库概述要求_第3页
《数据库原理及应用》-关系数据库概述要求_第4页
《数据库原理及应用》-关系数据库概述要求_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理及应用-关系数据 库概述要求 数据库原理及应用数据库原理及应用 数据库原理及应用-关系数据 库概述要求 n要求要求 n成绩评定成绩评定 n实验课安排:实验课安排: n第第4、6、8、10、12、14、16、18周,周周,周 二下午二下午7-8节,躬行楼节,躬行楼3楼网络机房。楼网络机房。 n公共邮箱:公共邮箱: n n密码:密码:hftctjx 数据库原理及应用-关系数据 库概述要求 第一章第一章 关系数据库概述关系数据库概述 本章将介绍数据库的有关概念、数据库本章将介绍数据库的有关概念、数据库 的系统结构、数据库管理系统的功能和的系统结构、数据库管理系统的功能和 组成等知识,作为后

2、面学习的基础。组成等知识,作为后面学习的基础。 数据库原理及应用-关系数据 库概述要求 学习要点:学习要点: n数据库的基本概念数据库的基本概念 n三个世界与两个模型三个世界与两个模型 nE-RE-R图的使用图的使用 n关系数据库规范化的方法和步骤关系数据库规范化的方法和步骤 nSQLSQL的功能和语法格式的功能和语法格式 数据库原理及应用-关系数据 库概述要求 如果你是一个班主任,为及时掌握班级动态,提如果你是一个班主任,为及时掌握班级动态,提 高班级管理效率,就应该对班级的各种信息进行高班级管理效率,就应该对班级的各种信息进行 及时收集,分析、处理。及时收集,分析、处理。 问问1 1:你认

3、为应该分析处理那些数据?:你认为应该分析处理那些数据? (基本信息、成绩信息、档案信息)(基本信息、成绩信息、档案信息) 问问2 2:没有计算机你会怎么处理数据?:没有计算机你会怎么处理数据? ( (手工表、计算器手工表、计算器) ) 问问3 3:有了计算机你会怎么处理数据:有了计算机你会怎么处理数据? ? WORDWORD不便于统计排序不便于统计排序,EXCEL,EXCEL可以统计排序,但表可以统计排序,但表 间数据的组合困难间数据的组合困难 问问4 4:用什么办法解决?:用什么办法解决? 用数据库系统可以处理复杂数据。(学生综合管理系统)用数据库系统可以处理复杂数据。(学生综合管理系统)

4、数据库原理及应用-关系数据 库概述要求 数据库应用实例:数据库应用实例: n进销存数据库进销存数据库 nAccessAccess示例数据库示例数据库NorthwindNorthwind(罗斯文(罗斯文 示例数据库)示例数据库) n 数据库原理及应用-关系数据 库概述要求 1.1 1.1 数据库简介数据库简介 1.2 1.2 数据模型数据模型 1.3 1.3 关系数据库关系数据库 1.4 1.4 关系数据库标准语言关系数据库标准语言SQLSQL 1.5 1.5 数据库系统结构数据库系统结构 1.6 1.6 数据库新技术数据库新技术 第第1 1章章 关系数据库概述关系数据库概述 数据库原理及应用-

5、关系数据 库概述要求 1.1 1.1 数据库简介数据库简介 1.1.1数据库的基本概念 n数据:是数据库系统研究和处理的对象,本质 上讲是描述事物的符号记录。 (文字、图形、图像、学生的档案记录、货物的运输情(文字、图形、图像、学生的档案记录、货物的运输情 况等都是数据。)况等都是数据。) n数据库:长期存储在计算机内、有组织、可共 享的数据集合。 (数据库中的数据按一定的数据模型组织、描述和储(数据库中的数据按一定的数据模型组织、描述和储 存,具有较小的冗余度,较高的数据独立性和易扩展性,存,具有较小的冗余度,较高的数据独立性和易扩展性, 并可为各种用户共享。是数据库系统的核心和管理对并可为

6、各种用户共享。是数据库系统的核心和管理对 象。)象。) 数据库原理及应用-关系数据 库概述要求 n数据库管理系统(DBMS):位于用户与操作 系统之间的数据库管理软件,是系统软件,数 据库在建立、运用和维护时由DBMS统一管理、 统一控制。 DBMS使用户能方便的定义数据和 操纵数据,并能够保证数据的安全性、完整性、 多用户对数据的并发使用及发生故障后的系统 恢复。 n数据库系统(database system):通常是指带有 数据库的计算机应用系统。一般由数据库、数 据库管理系统(及其开发工具)、应用系统、 数据库管理员(DBA)和用户组成。 数据库原理及应用-关系数据 库概述要求 1.1.

7、2数据库技术的发展 n数据管理:是指如何对数据分类,组织,编码,储存,数据管理:是指如何对数据分类,组织,编码,储存, 检索和维护,是数据处理的中心问题。检索和维护,是数据处理的中心问题。 n数据管理经历了人工管理,文件系统和数据库系统三数据管理经历了人工管理,文件系统和数据库系统三 个阶段。个阶段。 1 1人工管理阶段人工管理阶段 在20世纪50年代中期以前,计算机主要用于科学计算。 当时的硬件状况是,外存只有纸带、卡片、磁带,没 有磁盘等直接存取的存储设备;软件状况是,没有操 作系统,没有管理数据的软件;数据处理方式是批处 理。 数据库原理及应用-关系数据 库概述要求 人工管理数据的特点:

8、人工管理数据的特点: n数据不保存,主要用于科学计算,计算某一课题时输数据不保存,主要用于科学计算,计算某一课题时输 入数据,用完就撤走。入数据,用完就撤走。 n应用程序管理数据。应用程序不仅要设计数据的逻辑应用程序管理数据。应用程序不仅要设计数据的逻辑 结构,还要设计物理结构,包括存储结构、存取方法、结构,还要设计物理结构,包括存储结构、存取方法、 输入方式等。输入方式等。 n数据不共享。一组数据只能对应一个程序。多个程序数据不共享。一组数据只能对应一个程序。多个程序 涉及相同的数据时,必须各自定义,冗余较大。涉及相同的数据时,必须各自定义,冗余较大。 n数据不具有独立性,数据结构变化后,必

9、须对应用程数据不具有独立性,数据结构变化后,必须对应用程 序做相应的修改。序做相应的修改。 数据库原理及应用-关系数据 库概述要求 2 2文件系统阶段文件系统阶段 20世纪50年代后期到60年代中期,计算机的应用范围 逐渐扩大,计算机不仅用于科学计算,而且还大量用 于管理。这时硬件上已有了磁盘、磁鼓等直接存取存 储设备;软件方面,操作系统中已经有了专门的数据 管理软件,一般称为文件系统;处理方式上不仅有了 文件批处理,而且能够联机实时处理。 数据库原理及应用-关系数据 库概述要求 文件系统管理数据的特点:文件系统管理数据的特点: n数据可以长期保存。数据可以长期保存。 n由文件系统管理数据,文

10、件系统把数据组织成相互独由文件系统管理数据,文件系统把数据组织成相互独 立的数据文件,利用立的数据文件,利用“按文件名访问,按记录进行存按文件名访问,按记录进行存 取取”。数据的最小存取单位是记录,不能细到数据项。数据的最小存取单位是记录,不能细到数据项。 程序和数据之间由文件系统提供存取方法进行转换,程序和数据之间由文件系统提供存取方法进行转换, 使应用程序和数据之间有了一定的独立性。使应用程序和数据之间有了一定的独立性。 n数据共享性差,冗余度大。不同应用程序具有部分相数据共享性差,冗余度大。不同应用程序具有部分相 同数据时,也必须建立各自的文件。同数据时,也必须建立各自的文件。 n数据独

11、立性差。应用程序的修改,将引起文件数据结数据独立性差。应用程序的修改,将引起文件数据结 构的改变,反之亦然。构的改变,反之亦然。 数据库原理及应用-关系数据 库概述要求 3 3数据库系统阶段数据库系统阶段 二十世纪六十年代后期,硬件价格下降,软件价格上 升,联机实时处理要求更多,并开始提出和考虑分布 处理。在这种背景下,以文件系统作为数据管理手段 已经不能满足应用的需求,于是为解决多用户、多应 用共享数据的需求,使数据为尽可能多的应用服务, 出现了数据库技术,出现了统一管理数据的专门软件 系统数据库管理系统。 数据库原理及应用-关系数据 库概述要求 1 1、6060年代末第一代数据库系统:网状

12、、层次数据库年代末第一代数据库系统:网状、层次数据库 2 2、7070年代第二代数据库系统:关系数据库系统年代第二代数据库系统:关系数据库系统 3 3、第三代数据库系统、第三代数据库系统 4 4、数据库技术的新进展、数据库技术的新进展 数据库原理及应用-关系数据 库概述要求 数据库系统发展简图数据库系统发展简图 文件系统文件系统 层次数据库系统层次数据库系统 网状数据库系统网状数据库系统 关系数据库系统关系数据库系统 面向对象数据库面向对象数据库关系数据库扩充关系数据库扩充知识库知识库 对象关系数据库对象关系数据库 数据数据 仓库仓库 Web 数据库数据库 嵌入式嵌入式 与移动与移动 数据库数

13、据库 安全安全 数据库数据库 面向对象面向对象 数据库数据库 工程工程 数据库数据库 图形图形 数据库数据库 图像图像 数据库数据库 统计统计 数据库数据库 并行并行 数数 据库据库 分布式分布式 数据库数据库 知识库知识库 数据库原理及应用-关系数据 库概述要求 1.1.3数据库技术的研究领域 1.数据库管理系统软件的研制数据库管理系统软件的研制:研制DBMS本身以及 以其为核心的一系列相互联系的软件系统。目 标是扩大功能、提高性能和提高用户的生产率。 2.数据库设计数据库设计:主要研究方向包括数据库设计方法、 设计工具和设计理论的研究,数据模型和数据 建模的研究,计算机辅助数据库设计方法及

14、其 软件系统的研究。 3.数据库理论:数据库理论:主要集中于关系的规范化理论、关 系数据理论等。如数据库逻辑演绎、知识推理、 并行算法等理论研究,以及知识库系统和数据 仓库的研制都已成为新的研究方向。 数据库原理及应用-关系数据 库概述要求 1.2 数据模型 n数据模型就是现实世界的模拟,在数据库中用数数据模型就是现实世界的模拟,在数据库中用数 据模型这个工具抽象、表示和处理现实世界中的据模型这个工具抽象、表示和处理现实世界中的 数据和信息。数据和信息。 n根据模型应用的不同目的,模型可以分为两类:根据模型应用的不同目的,模型可以分为两类: n概念模型:也称信息模型,它是按用户的观概念模型:也

15、称信息模型,它是按用户的观 点对数据和信息建模。点对数据和信息建模。 n数据模型:主要包括网状模型、层次模型、数据模型:主要包括网状模型、层次模型、 关系模型等,它是按计算机系统的观点对数关系模型等,它是按计算机系统的观点对数 据建模。据建模。 数据库原理及应用-关系数据 库概述要求 n课题引入:课题引入:假如你是一位老师,要使用电 脑对学生进行管理,那么实现的过程应该 是: 数据库原理及应用-关系数据 库概述要求 1.2.1 概念模型 1.1.三个世界三个世界 1 1)现实世界:人们管理的对象存在于现实世界,)现实世界:人们管理的对象存在于现实世界, 现实世界的事物以及事物之间的联系是普遍存

16、现实世界的事物以及事物之间的联系是普遍存 在的,是由事物本身的性质决定的。在的,是由事物本身的性质决定的。 2 2)概念世界:概念世界是现实世界在人们头脑)概念世界:概念世界是现实世界在人们头脑 中的反映,是对客观事物及其联系的一种抽象中的反映,是对客观事物及其联系的一种抽象 描述。描述。 3 3)数据世界:将概念世界中的事物数据化存入)数据世界:将概念世界中的事物数据化存入 计算机系统。计算机系统。 数据库原理及应用-关系数据 库概述要求 2.2.概念模型的主要概念概念模型的主要概念 n实体:客观存在并相互区别的事物及其事物之间实体:客观存在并相互区别的事物及其事物之间 的联系。的联系。 (

17、例如,一个学生、一门课程、学生的一次选课(例如,一个学生、一门课程、学生的一次选课 等都是实体。)等都是实体。) n属性:实体所具有的某一特性。例如,学生的学属性:实体所具有的某一特性。例如,学生的学 号、姓名、出生年份、系、入学时间等。号、姓名、出生年份、系、入学时间等。 n码:唯一标识实体的码:唯一标识实体的最小最小属性集。例如,学号。属性集。例如,学号。 n域:属性的取值范围。例如,性别的域为(男,域:属性的取值范围。例如,性别的域为(男, 女),分数的域为(女),分数的域为(0 0,100100) 数据库原理及应用-关系数据 库概述要求 n实体型:用实体名及其属性名集合来抽象和实体型:

18、用实体名及其属性名集合来抽象和 刻画同类实体,称为实体型。刻画同类实体,称为实体型。 例如:学生(学号,姓名,性别,出生年份,例如:学生(学号,姓名,性别,出生年份, 系,入学时间)系,入学时间) n实体集:同型实体的集合。例如,全体学生实体集:同型实体的集合。例如,全体学生 就是一个实体集。就是一个实体集。 n联系:实体与实体之间以及实体与组成它的联系:实体与实体之间以及实体与组成它的 各属性间的关系。各属性间的关系。 联系有三种情况:一对一、一对多、多对多联系有三种情况:一对一、一对多、多对多 联系。联系。 数据库原理及应用-关系数据 库概述要求 3.3.概念模型的表示方法概念模型的表示方

19、法 n概念模型的表示方法很多,最常用的是实体概念模型的表示方法很多,最常用的是实体 联系方法。该方法用联系方法。该方法用ERER图来描述现实世界图来描述现实世界 的概念模型,提供了实体型、属性和联系的的概念模型,提供了实体型、属性和联系的 方法。方法。 实体型:用矩形表示,矩形框内写明实体名。实体型:用矩形表示,矩形框内写明实体名。 属性属性: : 用椭圆形表示,并用无向边将其与相应实用椭圆形表示,并用无向边将其与相应实 体连接起来。体连接起来。 联系:用菱形表示,并用无向边将其与相应实体联系:用菱形表示,并用无向边将其与相应实体 连接起来,同时,在无向边旁标上联系的类连接起来,同时,在无向边

20、旁标上联系的类 型(型(1 1:1 1,1 1:n n,m m:n n)。)。 数据库原理及应用-关系数据 库概述要求 班班 号号班 级 人班 级 人 数数 班 级 名班 级 名 称称 班班 级级 组成组成 人数人数 性别性别 学学 生生 学号学号姓名姓名籍贯籍贯年龄年龄 例如图例如图11就是一个班级的概念模型的就是一个班级的概念模型的ER图。图。 图图11 1 n 数据库原理及应用-关系数据 库概述要求 联系的类型有三种:联系的类型有三种: n一对一关系:对于特定的系一对一关系:对于特定的系DEPARTMENT (象象 社会科学系社会科学系)仅有一个系主任(仅有一个系主任(DEPARTMEN

21、T HEAD)。)。 数据库原理及应用-关系数据 库概述要求 n一对多关系:一个学生一对多关系:一个学生 STUDENT 仅可以主仅可以主 修(修(MAJOR)一门课程)一门课程, 但是有许多学生但是有许多学生 STUDENT 将注册给定的将注册给定的MAJOR课程。课程。 n 数据库原理及应用-关系数据 库概述要求 n多对多关系:一个学生多对多关系:一个学生 STUDENT 可以学习可以学习 许多课程许多课程COURSE和许多学生和许多学生STUDENT可以可以 注册给定的课程注册给定的课程COURSE。 n 数据库原理及应用-关系数据 库概述要求 1.2.2 数据模型 n数据模型有三个基本

22、组成要素:数据结构、数据数据模型有三个基本组成要素:数据结构、数据 操作和完整性约束。操作和完整性约束。 1.1.数据结构:用于描述系统的静态特性,是所研究数据结构:用于描述系统的静态特性,是所研究 的对象类型的集合,数据模型按数据结构分为网的对象类型的集合,数据模型按数据结构分为网 状模型、层次模型、关系模型。状模型、层次模型、关系模型。 2. 2. 数据操作:用于描述系统的动态特性,是指对数数据操作:用于描述系统的动态特性,是指对数 据库中各种对象的实例允许执行的操作的集合,据库中各种对象的实例允许执行的操作的集合, 包括操作及有关的操作规则。例如检索和更新包括操作及有关的操作规则。例如检

23、索和更新 (包括插入、删除、修改)(包括插入、删除、修改) 3. 3. 数据的约束条件:是一组完整性规则的集合,完数据的约束条件:是一组完整性规则的集合,完 整性规则是给定的数据及其联系所具有的制约和整性规则是给定的数据及其联系所具有的制约和 储存规则,用以限定数据库状态以及状态的变化,储存规则,用以限定数据库状态以及状态的变化, 以保证数据的正确、有效和相容。以保证数据的正确、有效和相容。 数据库原理及应用-关系数据 库概述要求 1.2.3 数据模型 n层次模型层次模型 n网状模型网状模型 n关系模型关系模型 数据库原理及应用-关系数据 库概述要求 1、层次模型、层次模型 教研室教研室 教师

24、教师 学生学生教研室教研室 经济系经济系 教师教师 学生学生 管理系管理系 商学院商学院 数据库原理及应用-关系数据 库概述要求 2、网状模型、网状模型 学生宿舍学生宿舍 学生学生教研室教研室 系系 教师教师 数据库原理及应用-关系数据 库概述要求 3.关系模型关系模型 (1) (1) 关系数据结构关系数据结构 关系模型(关系模型(relational modelrelational model)的特点是)的特点是 用一组二维表来表示数据和数据之间的联系。用一组二维表来表示数据和数据之间的联系。 数据库原理及应用-关系数据 库概述要求 学号学号姓名姓名性别性别年龄年龄所在系所在系 000101

25、王萧王萧男男17经济系经济系 000207李云虎李云虎男男18机械系机械系 010302郭敏郭敏女女18信息系信息系 010408高红高红女女20土木系土木系 020309王睿王睿男男19信息系信息系 020506路旭青路旭青女女21管理系管理系 表表1-2 数据库原理及应用-关系数据 库概述要求 关系模型相关术语关系模型相关术语 n关系:一个关系对应一张二维表,表关系:一个关系对应一张二维表,表1-21-2中的这中的这 张学生记录表就是一个关系张学生记录表就是一个关系 n元组:表中的一行即为一个元组,对应表中一个元组:表中的一行即为一个元组,对应表中一个 记录,若表记录,若表1-21-2有有

26、2020行,就有行,就有2020个元组;个元组; n属性:表中的一列即为一个属性,表属性:表中的一列即为一个属性,表1-21-2有有5 5列,列, 对应对应5 5个属性个属性( (学号,姓名,性别,年龄和所在学号,姓名,性别,年龄和所在 系系) ); n域域(domain)(domain):属性的取值范围,如表:属性的取值范围,如表1-21-2中学生中学生 年龄的域应是年龄的域应是(1628)(1628),性别的域是,性别的域是( (男,女男,女) ), 系别的域是一个学校所有系名的集合。系别的域是一个学校所有系名的集合。 数据库原理及应用-关系数据 库概述要求 n码码(key)(key):表

27、中的某个属性(组),它可以唯:表中的某个属性(组),它可以唯 一确定一个元组,则称该属性组为一确定一个元组,则称该属性组为“侯选侯选 码码”。若一个关系有多个侯选码,则选定其。若一个关系有多个侯选码,则选定其 中一个为主码。如表中一个为主码。如表1-21-2中的学号,是该学生中的学号,是该学生 关系的码。关系的码。 n外键:设外键:设F F是关系是关系R R的一个或一组属性,但不的一个或一组属性,但不 是是R R的候选码,如果的候选码,如果F F与关系与关系S S的主码的主码KsKs相对应,相对应, 则称则称F F是关系是关系R R的外键。的外键。 n关系模式:对关系的描述,一般表示为:关系模

28、式:对关系的描述,一般表示为: 关系名关系名( (属性属性1 1,属性,属性2 2,属性,属性n)n) 例如,上面的关系可描述为:例如,上面的关系可描述为: 学生学生( (学号,姓名,性别,年龄,所在系学号,姓名,性别,年龄,所在系) ) 数据库原理及应用-关系数据 库概述要求 (2)关系数据模型的存储结构)关系数据模型的存储结构 关系数据模型中,实体及实体间的联系关系数据模型中,实体及实体间的联系 都用表来表示。在数据库的物理组织中,都用表来表示。在数据库的物理组织中, 表以文件形式存储,每一个表通常对应表以文件形式存储,每一个表通常对应 一种文件结构。一种文件结构。 数据库原理及应用-关系

29、数据 库概述要求 (3)关系数据模型的优缺点)关系数据模型的优缺点 n结构简单、清晰,用户易懂易用结构简单、清晰,用户易懂易用 n关系模型的存取路径对用户透明,从而关系模型的存取路径对用户透明,从而 具有更高的数据独立性,更好的安全保具有更高的数据独立性,更好的安全保 密性,也简化了程序员的工作和数据库密性,也简化了程序员的工作和数据库 开发建立的工作开发建立的工作 n由于存取路径对用户透明,查询效率往由于存取路径对用户透明,查询效率往 往不如非关系数据模型。往不如非关系数据模型。 数据库原理及应用-关系数据 库概述要求 1.3 关系数据库 关系模型是目前最重要的一种模型。美国关系模型是目前最

30、重要的一种模型。美国IBMIBM公公 司的研究员司的研究员E EF FCoddCodd于于19701970年发表题为年发表题为”大型大型 共享系统的关系数据库的关系模型共享系统的关系数据库的关系模型”的论文,文的论文,文 中首次提出了数据库系统的关系模型。中首次提出了数据库系统的关系模型。2020世纪世纪8080 年代以来,计算机厂商新推出的数据库管理系统年代以来,计算机厂商新推出的数据库管理系统 (DBMS)(DBMS)几乎都支持关系模型,非关系系统的产品几乎都支持关系模型,非关系系统的产品 也大都加上了关系接口。数据库领域当前的研究也大都加上了关系接口。数据库领域当前的研究 工作都是以关系

31、方法为基础。目前,最普遍的关工作都是以关系方法为基础。目前,最普遍的关 系数据库有系数据库有SQL Server SQL Server 、SybaseSybase、 OracleOracle、 AccessAccess等。等。 数据库原理及应用-关系数据 库概述要求 1.3.1关系数据的规范化概念 n一组相互关联的数据称为一个一组相互关联的数据称为一个“关系关系” n“关系关系”下的每个数据项则称为下的每个数据项则称为“数据元素数据元素” n“关系关系”落实到具体数据库上就是基本表,落实到具体数据库上就是基本表, 而而“数据元素数据元素”就是基本表中的一个字段。就是基本表中的一个字段。 表中的

32、第一行用来存放字段名,称为表中的第一行用来存放字段名,称为“关系关系 模式模式”,其余各行用来存放字段的值,其余各行用来存放字段的值, ,称为称为 “记录记录”。 n同一张表中不应存放两个完全相同的记录同一张表中不应存放两个完全相同的记录 数据库原理及应用-关系数据 库概述要求 专业专业 编号编号 专业名称专业名称办公室办公室 电话电话 01计算机科学与技术计算机科学与技术1201 02电子商务电子商务1301 03土木工程土木工程1401 04经济管理经济管理1501 05机械设计机械设计2601 表表1-1 专业表专业表 数据库原理及应用-关系数据 库概述要求 表表1-2 学生表学生表 学

33、号学号姓名姓名性别性别年龄年龄专业编专业编 号号 王凯王凯女女2301 李云陆李云陆男男2101 刘敏刘敏男男2201 高红波高红波男男2302 数据库原理及应用-关系数据 库概述要求 1.1.关键字:能够用来唯一标识记录的属性或属关键字:能够用来唯一标识记录的属性或属 性的组合,称为性的组合,称为“关键字。如表关键字。如表1-4 1-4 课程课程 选修表(包括字段学号、课程编号)选修表(包括字段学号、课程编号) 2.2.主键:被指定作为关键字的属性或属性组合,主键:被指定作为关键字的属性或属性组合, 称为该表的称为该表的“主关键字主关键字”或或“主键主键”,如,如 表表1-11-1中指定专业

34、编号作为该表的主关键字中指定专业编号作为该表的主关键字 3.3.外键:当数据表中的某属性或属性组合不是外键:当数据表中的某属性或属性组合不是 该表的关键字(或只是关键字的一部分),该表的关键字(或只是关键字的一部分), 但却是另一数据表的关键字时,称该属性但却是另一数据表的关键字时,称该属性 或属性组合为这个表的或属性组合为这个表的“外部关键字外部关键字”或或 “外键外键” 。 数据库原理及应用-关系数据 库概述要求 4.关系的种类:关系的种类: a.a.一对一关系一对一关系 b.b.一对多关系一对多关系 c.c.多对多关系多对多关系 数据库原理及应用-关系数据 库概述要求 1.3.2关系数据

35、的规范化处理 n关系数据库中的关系是要满足一定要求关系数据库中的关系是要满足一定要求 的,满足不同程度要求的为不同范式。的,满足不同程度要求的为不同范式。 目前遵循的主要范式包括第一范式(目前遵循的主要范式包括第一范式(1 1 NFNF)、第二范式()、第二范式(2 NF2 NF)、第三范式)、第三范式 (3 NF3 NF)、第四范式()、第四范式(4NF4NF)等。)等。 n规范化设计的过程就是按不同的范式,规范化设计的过程就是按不同的范式, 将一个二维表不断地分解成多个二维表将一个二维表不断地分解成多个二维表 并建立表之间的关联,最终达到一个表并建立表之间的关联,最终达到一个表 只描述一个

36、实体或者实体间的一种联系只描述一个实体或者实体间的一种联系 的目标。的目标。 数据库原理及应用-关系数据 库概述要求 1 1、第一范式、第一范式 关系中每一个数据项必须是不可再分的,满足关系中每一个数据项必须是不可再分的,满足 这个条件的关系模式就属于第一范式。关系这个条件的关系模式就属于第一范式。关系 数据库中的所有数据表都必然满足第一范式。数据库中的所有数据表都必然满足第一范式。 2 2、第二范式、第二范式 在一个满足第一范式的关系中,如果所有非在一个满足第一范式的关系中,如果所有非 主属性都完全依赖于主码,则称这个关系满主属性都完全依赖于主码,则称这个关系满 足第二范式。足第二范式。 3

37、 3、第三范式、第三范式 对于满足第二范式的关系,如果每一个非主对于满足第二范式的关系,如果每一个非主 属性都不传递依赖于主码,则称这个关系满属性都不传递依赖于主码,则称这个关系满 足第三范式。足第三范式。 (详图见课本)(详图见课本) 数据库原理及应用-关系数据 库概述要求 1.3.3关系的完整性 n关系的完整性规则是对关系的某种约束条件。在关系的完整性规则是对关系的某种约束条件。在 关系模型中有三类完整性约束:实体完整性、参关系模型中有三类完整性约束:实体完整性、参 照完整性和用户定义的完整性。其中,实体完整照完整性和用户定义的完整性。其中,实体完整 性和参照完整性是关系模型必须满足的完整

38、性约性和参照完整性是关系模型必须满足的完整性约 束条件,被称为关系的两个不变性条件,应该由束条件,被称为关系的两个不变性条件,应该由 关系系统自动支持。关系系统自动支持。 数据库原理及应用-关系数据 库概述要求 1、实体完整性、实体完整性 n实体完整性规则:若属性实体完整性规则:若属性A A是基本关系是基本关系R R的主的主 属性,则属性属性,则属性A A不能取空值。不能取空值。 n例如,在学生关系例如,在学生关系S(S#, SN, SS, SA, SD)S(S#, SN, SS, SA, SD)中,中, S#S#属性为主码,则属性为主码,则S#S#不能取空值。不能取空值。 n实体完整性规则规

39、定基本关系的所有主属性都不实体完整性规则规定基本关系的所有主属性都不 能取空值,而不仅是主码整体不能取空值。例如,能取空值,而不仅是主码整体不能取空值。例如, 学生选课关系学生选课关系SC(S#, C#,G)SC(S#, C#,G)中,中,(S#,C#)(S#,C#)为主码,为主码, 则则S#S#和和C#C#两属性都不能取空值。两属性都不能取空值。 数据库原理及应用-关系数据 库概述要求 2、参照完整性、参照完整性 现实世界中的实体之间往往存在某种联系,在关现实世界中的实体之间往往存在某种联系,在关 系模型中,实体及实体间的联系都是用关系来系模型中,实体及实体间的联系都是用关系来 描述的。这样

40、就自然存在着关系与关系间的引描述的。这样就自然存在着关系与关系间的引 用。先来看用。先来看1 1个例子。个例子。 【例【例1 1】在学生】在学生课程关系数据库中,包括学生关课程关系数据库中,包括学生关 系系S S、课程关系、课程关系C C和选修关系和选修关系SCSC,这三个关系分,这三个关系分 别为:别为: 学生学生( (学号学号, ,姓名姓名, ,性别性别, ,年龄年龄, ,所在系所在系) ) 课程课程( (课程号课程号, ,课程名课程名, ,学分学分) ) 选修选修( (学号学号, ,课程号课程号, ,成绩成绩) ) 数据库原理及应用-关系数据 库概述要求 n这三个关系之间也存在着属性的引

41、用,即选这三个关系之间也存在着属性的引用,即选 修关系引用了学生关系的主码修关系引用了学生关系的主码“学号学号”和课和课 程关系的主码程关系的主码“课程号课程号”。显然,选修关系。显然,选修关系 中的学号值必须是确实存在的学生的学号,中的学号值必须是确实存在的学生的学号, 即学生关系中有该学生的记录;选修关系中即学生关系中有该学生的记录;选修关系中 的课程号值也必须是确实存在的课程的课程的课程号值也必须是确实存在的课程的课程 号,即课程关系中有该课程的记录。换句话号,即课程关系中有该课程的记录。换句话 说,选修关系中某些属性的取值需要参照其说,选修关系中某些属性的取值需要参照其 他关系的属性取

42、值。他关系的属性取值。 n不仅两个或两个以上的关系间可以存在引用不仅两个或两个以上的关系间可以存在引用 关系,同一关系内部属性间也可能存在引用关系,同一关系内部属性间也可能存在引用 关系。关系。 数据库原理及应用-关系数据 库概述要求 n定义:设定义:设F F是关系是关系R R的一个或一组属性,但不是的一个或一组属性,但不是 关系关系R R的码,如果的码,如果F F与关系与关系S S的主码的主码KsKs相对应,则相对应,则 称称F F是基本关系是基本关系R R的外码(的外码(foreign keyforeign key),并称),并称 关系关系R R为参照关系,关系为参照关系,关系S S为被参

43、照关系。为被参照关系。 显然,被参照关系显然,被参照关系S S的主码的主码KsKs和参照关系的外码和参照关系的外码F F 必须定义在同一个(或一组)域上。必须定义在同一个(或一组)域上。 n在例子中,选修关系的在例子中,选修关系的“学号学号”属性与学生关属性与学生关 系的主码系的主码“学号学号”相对应,因此相对应,因此“学号学号”属性属性 是选修关系的外码;学生关系为被参照关系,是选修关系的外码;学生关系为被参照关系, 选修关系为参照关系。选修关系的选修关系为参照关系。选修关系的“课程号课程号” 属性与课程关系的主码属性与课程关系的主码“课程号课程号”相对应,因相对应,因 此此“课程号课程号”

44、属性也是选修关系的外码;课程属性也是选修关系的外码;课程 关系为被参照关系,选修关系为参照关系关系为被参照关系,选修关系为参照关系 。 数据库原理及应用-关系数据 库概述要求 n参照完整性规则:若属性(或属性组)参照完整性规则:若属性(或属性组)F F是关系是关系R R 的外码,它与关系的外码,它与关系S S的主码的主码KsKs相对应(基本关系相对应(基本关系R R 和和S S不一定是不同的关系),则对于不一定是不同的关系),则对于R R中每个元组中每个元组 在在F F上的值为取空值(上的值为取空值(F F的每个属性值均为空值),的每个属性值均为空值), 或者等于或者等于S S中某个元组的主码

45、值。中某个元组的主码值。 n例子中选修关系中每个元组的学号属性只能取下面两类例子中选修关系中每个元组的学号属性只能取下面两类 值:值: (1 1)空值,表示尚未有学生选课。)空值,表示尚未有学生选课。 (2 2)非空值,这时该值必须是学生关系中某个学生的学)非空值,这时该值必须是学生关系中某个学生的学 号,表示某个未知的学生不能选课。号,表示某个未知的学生不能选课。 n同样,选修关系中每个元组的课程号只能取下面两类值:同样,选修关系中每个元组的课程号只能取下面两类值: (1 1)空值,表示尚未开课。)空值,表示尚未开课。 (2 2)非空值,这时该值必须是课程关系中的某个课程号,)非空值,这时该

46、值必须是课程关系中的某个课程号, 表示不能选未开设的课。表示不能选未开设的课。 数据库原理及应用-关系数据 库概述要求 3、用户定义的完整性、用户定义的完整性 n实体完整性和参照完整性适用于任何关系数据实体完整性和参照完整性适用于任何关系数据 库系统。除此之外,不同的关系数据库系统根库系统。除此之外,不同的关系数据库系统根 据其应用环境的不同,往往还需要一些特殊的据其应用环境的不同,往往还需要一些特殊的 约束条件。用户定义的完整性就是针对某一具约束条件。用户定义的完整性就是针对某一具 体关系数据库的约束条件,它反映某一具体应体关系数据库的约束条件,它反映某一具体应 用所涉及的数据必须满足的语义

47、要求。例如,用所涉及的数据必须满足的语义要求。例如, 学生关系的年龄在学生关系的年龄在15301530之间,选修关系的成之间,选修关系的成 绩必须在绩必须在01000100之间等。之间等。 数据库原理及应用-关系数据 库概述要求 1.4 SQL SQL功能功能 动词动词 数据查询数据查询 数据定义数据定义 数据操纵数据操纵 数据控制数据控制 SELECT CREATE,DROP,ALTER INSERT,UPDATE,DELETE GRANT,REVOKE 表表1-12 SQL语言的动词语言的动词 数据库原理及应用-关系数据 库概述要求 1数据定义 (1)定义表)定义表 nCREATE TAB

48、LE 表名表名( 列名列名 数据类型数据类型 列级完整件约束条件列级完整件约束条件 ,列名,列名 数据类型数据类型 列级完整性约束条列级完整性约束条) ,表级完整性约束条件,表级完整性约束条件; 数据库原理及应用-关系数据 库概述要求 (2) 修改表修改表 nALTER TABLE 表名表名 ADD新列名新列名 数据类型数据类型 完整性约束条件完整性约束条件 DROP 完整性约束名完整性约束名 MODIFY 列名列名 数据类型数据类型; 数据库原理及应用-关系数据 库概述要求 (3) 删除表删除表 n DROP TABLE 表名;表名; (4)建立索引)建立索引 n CREATE UNIQUE

49、 CLUSTER INDEX 索引名索引名 ON 表名表名(列名列名 次序次序 ,列名,列名次次 序序); 数据库原理及应用-关系数据 库概述要求 2数据查询 n SELECT ALL|DlSTINCT 目标列表达式目标列表达式, 目标列表达式目标列表达式 FROM 表名或视图名表名或视图名,表名或视图名,表名或视图名 ; WHERE 条件表达式条件表达式 GROUP BY列名列名1 HAVING 条件表达式条件表达式 ORDER EY列名列名2 ASC|DESC 数据库原理及应用-关系数据 库概述要求 3数据更新 (1) 插入数据插入数据 SQL用用INSERT来插入数据。来插入数据。SQL

50、通常有通常有 两种形式:两种形式: 插入单个元组,将新元组插入指定表中。插入单个元组,将新元组插入指定表中。 语句格式为:语句格式为: INSERET INTO 表名表名 (列名列名1,列名,列名2) VALUES(常量常量1,常量,常量2 ) 数据库原理及应用-关系数据 库概述要求 插入查询结果插入查询结果 语句格式为:语句格式为: INSERET INTO 表名表名 (列名列名1,列名,列名2) 查询;查询; 其功能是以批量插入,一次将查询的结果其功能是以批量插入,一次将查询的结果 全部插入指定表中。全部插入指定表中。 数据库原理及应用-关系数据 库概述要求 (2)修改数据)修改数据 修改

51、操作用修改操作用UPDATE实现,其语句的一般格式为:实现,其语句的一般格式为: UPDATE 表名表名 SET 列名表达式列名表达式 ,列名表达式,列名表达式 WHERE 条件条件; 其功能是修改指定表中满足其功能是修改指定表中满足WHERE条件的元组。条件的元组。 其中其中SET子句用于指定修改值,即用表达式的值子句用于指定修改值,即用表达式的值 取代相应的属性列值。如果省略取代相应的属性列值。如果省略WHERE子句,子句, 则表示要修改表中的所有元组。则表示要修改表中的所有元组。 数据库原理及应用-关系数据 库概述要求 (3)删除数据)删除数据 删除数据用删除数据用DELETE语句,语句

52、格式为语句,语句格式为 DELETE FROM 表名表名 WHERE 条件条件; 功能是从指定表中删除满足功能是从指定表中删除满足WHERE条件的所有元条件的所有元 组。如果省赂组。如果省赂WHERE子句,表示删除表中全子句,表示删除表中全 部元组。部元组。 数据库原理及应用-关系数据 库概述要求 1.5 数据库系统结构 1.5.1 数据库系统的模式结构数据库系统的模式结构 1.5.2 数据库系统的体系结构数据库系统的体系结构 1.5.3 数据库管理系统数据库管理系统 数据库原理及应用-关系数据 库概述要求 1.5.1 数据库系统的模式结构 1 1数据库系统的三级模式结构数据库系统的三级模式结

53、构 数据库系统是由外模式,模式和内模式三级模式数据库系统是由外模式,模式和内模式三级模式 组成,与之对应的是数据库的三级结构:局部组成,与之对应的是数据库的三级结构:局部 逻辑结构、全局逻辑结构和物理存储结构。逻辑结构、全局逻辑结构和物理存储结构。 (1 1)外模式:也称子模式或用户模式,它是应)外模式:也称子模式或用户模式,它是应 用程序员和最终用户看见和使用的局部数据的用程序员和最终用户看见和使用的局部数据的 逻辑结构和特征的描述,是数据库用户的数据逻辑结构和特征的描述,是数据库用户的数据 视图,是与某一应用有关的数据的逻辑表示。视图,是与某一应用有关的数据的逻辑表示。 一个数据库可以有多

54、个外模式。一个数据库可以有多个外模式。 数据库原理及应用-关系数据 库概述要求 (2 2)模式:也称逻辑模式,是数据库中全)模式:也称逻辑模式,是数据库中全 体数据的逻辑结构和特征的描述,是以数体数据的逻辑结构和特征的描述,是以数 据模型为基础,综合考虑所有用户需求的据模型为基础,综合考虑所有用户需求的 公用数据视图,与具体数据值、应用程序、公用数据视图,与具体数据值、应用程序、 开发语言、开发工具无关。一个数据库只开发语言、开发工具无关。一个数据库只 有一个模式。有一个模式。 (3 3)内模式:也称存储模式,它是数据物)内模式:也称存储模式,它是数据物 理和存储结构的描述,是数据在数据库内理

55、和存储结构的描述,是数据在数据库内 部的表示方式,如,数据保存在磁盘、磁部的表示方式,如,数据保存在磁盘、磁 带,是什么形式、是否被压缩和加密等。带,是什么形式、是否被压缩和加密等。 一个数据库只有一个内模式。一个数据库只有一个内模式。 数据库原理及应用-关系数据 库概述要求 2 2数据库的二级映象功能与数据独立性数据库的二级映象功能与数据独立性 数据库系统在这三级模式之间提供了数据库系统在这三级模式之间提供了 两层映象:外模式两层映象:外模式/ /模式映象和模式模式映象和模式/ / 内模式映象。正是这两层映象保证了内模式映象。正是这两层映象保证了 数据库系统的数据能够具有较高的逻数据库系统的

56、数据能够具有较高的逻 辑独立性和物理独立性。辑独立性和物理独立性。 数据库原理及应用-关系数据 库概述要求 n数据的逻辑独立性数据的逻辑独立性 模式描述的是数据的全局逻辑结构,外模式模式描述的是数据的全局逻辑结构,外模式 描述的是数据的局部逻辑结构。对应于同一描述的是数据的局部逻辑结构。对应于同一 个模式可以有任意多个外模式。对于每一个个模式可以有任意多个外模式。对于每一个 外模式,数据库系统都有一个外模式模式外模式,数据库系统都有一个外模式模式 映象,它定义了该外模式与模式之间的对应映象,它定义了该外模式与模式之间的对应 关系。当模式改变时关系。当模式改变时( (例如,增加新的数据类例如,增

57、加新的数据类 型、新的数据项、新的关系等型、新的数据项、新的关系等) ),由数据库管,由数据库管 理员对各个外模式模式的映象作相应改变,理员对各个外模式模式的映象作相应改变, 可以使外模式保持不变,从而应用程序不必可以使外模式保持不变,从而应用程序不必 修改,保证了数据的逻辑独立性。修改,保证了数据的逻辑独立性。 数据库原理及应用-关系数据 库概述要求 n数据的物理独立性数据的物理独立性 数据库中只有一个模式,也只有一个内模数据库中只有一个模式,也只有一个内模 式,所以模式内模式映象是唯一的,它定式,所以模式内模式映象是唯一的,它定 义了数据全局逻辑结构与存储结构之间的对义了数据全局逻辑结构与

58、存储结构之间的对 应关系。当数据库的存储结构改变了应关系。当数据库的存储结构改变了( (例如,例如, 采用了更先进的存储结构采用了更先进的存储结构) ),由数据库管理,由数据库管理 员对模式内模式映象作相应改变,可以使员对模式内模式映象作相应改变,可以使 模式保持不变,从而保证了数据的物理独立模式保持不变,从而保证了数据的物理独立 性。性。 数据库原理及应用-关系数据 库概述要求 1.5.2 数据库系统的体系结构 从最终用户角度来看,数据库系统分为单用户从最终用户角度来看,数据库系统分为单用户 结构、主从式结构、分布式结构和客户服务结构、主从式结构、分布式结构和客户服务 器结构。器结构。 1

59、1单用户数据库系统单用户数据库系统 是一种早期的最简单的数据库系统。在这种系是一种早期的最简单的数据库系统。在这种系 统中,整个数据库系统(包括应用程序、统中,整个数据库系统(包括应用程序、DBMSDBMS、 数据)都装在一台计算机上,由一个用户独占,数据)都装在一台计算机上,由一个用户独占, 不同机器之间不能共享数据。不同机器之间不能共享数据。 数据库原理及应用-关系数据 库概述要求 2 2主从式结构主从式结构 是指一个主机带多个终端的多用户结构。在这是指一个主机带多个终端的多用户结构。在这 种结构中,数据库系统(包括应用程序、种结构中,数据库系统(包括应用程序、DBMSDBMS、 数据)都

60、集中存放在主机上,所有处理任务都数据)都集中存放在主机上,所有处理任务都 由主机来完成,各个用户通过主机的终端并发由主机来完成,各个用户通过主机的终端并发 地存取数据库,共享数据资源。地存取数据库,共享数据资源。 3 3分布式结构分布式结构 是指数据库中的数据在逻辑上是一个整体,但是指数据库中的数据在逻辑上是一个整体,但 物理地分布在计算机网络的不同结点上。网络物理地分布在计算机网络的不同结点上。网络 中的每个结点都可以独立处理本地数据库中的中的每个结点都可以独立处理本地数据库中的 数据,执行局部应用;同时也可以同时存取和数据,执行局部应用;同时也可以同时存取和 处理多个异地数据库中的数据,执

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论