




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章数据库基础1.1数据库系统概述1.2数据模型1.3关系数据库的基本原理
29十月2023Page1数据库是数据管理的最新技术,是计算机科学的重要分支。今天,信息资源已成为各个领域的重要财富和资源。教学要求:通过本章学习,读者应掌握以下内容:数据库的基本概念及数据库系统数据模型关系数据库的基本原理及关系运算29十月2023Page21.1数据库系统概述1.1.1数据库的基本概念1.数据(Data)数据是描述客观事物的符号记录,可以是数字、文字、图形、图像、声音、语言等,经过数字化后存入计算机。事物可以是可触及的对象(一个人、一棵树、一个零件等),可以是抽象事件(一次球赛、一次演出等),也可以是事物之间的联系(一张借书卡、订货单等)。29十月2023Page32.数据库(Database,简称DB)数据库是存放数据的仓库,是长期存储在计算机内的、有组织的、可共享的数据集合。在数据库中集中存放了一个组织的完整的有价值的数据资源,如学生成绩、学生档案、公司账目等。它可以供各种用户共享、具有最小冗余度、较高的数据独立性和易扩展性。29十月2023Page43.数据库管理系统(DatabaseManagementSystem,简称DBMS)数据库管理系统指位于用户与操作系统之间的一层数据管理系统软件。数据库在建立、运行和维护时由数据库管理系统统一管理、统一控制。数据库管理系统是一组计算机程序,使用户能方便地定义数据和操纵数据,并能够保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。29十月2023Page5DBMS的主要功能:数据定义功能数据的组织存储和管理功能数据操纵功能数据库的事务管理和运行管理功能数据库的建立和维护功能4.数据库系统(DatabaseSystem,简称DBS)数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。29十月2023Page7(1)数据是构成数据库的主体,是数据库系统的管理对象。(2)硬件是数据库系统的物力支撑,包括CPU、内存、外存及I/O设备等。(3)软件包括系统软件和应用软件。系统软件包括操作系统和数据库管理系统。数据库管理系统是数据库系统中最重要的核心软件。应用软件是在数据库管理系统的支持下由用户根据实际需求开发的应用程序。(4)用户包括专业用户、非专业用户和数据管理员。29十月2023Page85.数据库系统管理员(DatabaseAdministrator,简称DBA)数据库系统管理员是负责数据库的建立、使用和维护的专门的人员。用户使用数据库是目的,数据库管理系统是帮助用户达到这一目的的工具和手段。29十月2023Page101.1.2数据管理技术的产生和发展
数据管理技术经历了人工管理、文件系统、数据库系统3个阶段。1.人工管理阶段2.文件系统阶段3.数据库系统阶段29十月20231.1.3数据库系统的特点
与人工管理和文件系统相比,数据库系统的特点主要有以下几个方面。1.数据结构化2.数据的共享性高,冗余度低,易扩充3.数据独立性高4.数据由DBMS统一管理和控制数据库的安全性(security)保护。数据的完整性检查(integrity)。并发(concurrency)控制。数据库恢复(recovery)。29十月20231.2数据模型模型是对现实世界中某个对象特征的模拟和抽象。数据模型是对现实世界数据特征的抽象。是用来描述数据、组织数据和对数据进行操作的。数据模型是数据库系统的核心和基础。29十月2023Page131.2.1两类模型
根据模型应用的不同目的,可以将这些模型划分为两类,它们分别属于两个不同的层次。第一类是概念模型,第二类是逻辑模型第一类概念模型,也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。第二类中的逻辑模型主要包括层次模型、网状模型、关系模型、面向对象模型和对象关系模型等。它是按计算机系统的观点对数据建模,主要用于DBMS的实现。数据模型应满足三方面要求:一是能比较真实地模拟现实世界;二是容易为人所理解;三是便于在计算机上实现。现实世界:个体信息世界:概念模型计算机世界:数据模型29十月20231.2.2数据模型的组成要素
数据模型通常由数据结构、数据操作和完整性约束三部分组成。1.数据结构:数据结构描述数据库的组成对象以及对象之间的联系。2.数据操作:数据操作是指对数据库中各种对象的实例允许执行的操作的集合,包括操作及有关的操作规则。3.数据的完整性约束条件:数据的完整性约束条件是一组完整性规则的集合。29十月20231.2.3概念模型
概念模型实际上是现实世界到机器世界的一个中间层次。1.信息世界中的基本概念(1)实体(Entity)(2)属性(Attribute)(3)域(Domain)(4)实体型(EntityType)(5)实体集(EntitySet)(6)码(Key)
(7)联系(Relationship)29十月20232.两个实体型之间的联系两个实体型之间的联系可以分为三种:(1)一对一联系(1:1)(2)一对多联系(1:n)(3)多对多联系(m:n)29十月20233.单个实体型内的联系同一个实体集内的各实体之间也可以存在一对一、一对多、多对多的联系。4.概念模型的一种表示方法:实体-联系方法(E-R模型)概念模型的表示方法很多,其中最为著名最为常用的是1976年P.P.S.Chen提出实体-联系方法。该方法用E-R(Entity-Relationship)图来描述现实世界的概念模型E-R方法也称为E-R模型。29十月2023一个E-R图由实体型、属性和联系三个基本要素组成。(1)实体型:即现实世界存在的、可以相互区别的人或事物。一个实体集合对应于数据库中的一个表,一个实体对应于表中的一行。实体用矩形表示,矩形内标注实体名称。(2)属性:表示实体或联系的某种特征。一个属性对应于数据库表中的一列,也称为一个字段。用椭圆表示属性,椭圆内标注属性名称。并用连线与实体连接起来。(3)联系:即实体之间的联系。在E-R图中用菱形表示,菱形内注明联系名称,并用连线将菱形框分别与相关实体相连,且在连线上注明联系类型,类型包括1∶1、1∶n和m∶n三种。29十月202329十月2023Page20【例1.1】为某百货公司设计一个E-R模型。百货公司管辖若干连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工服务于一家商店。商店的属性包括编号、店名、店址、店经理。商品的属性包括编号、商品名、单价、产地。职工的属性包括职工编号、职工姓名、性别、工资。29十月2023Page2129十月2023Page221.层次模型在层次模型中,每个结点表示一个记录类型,记录(类型)之间的联系用结点之间的连线(有向边)表示,这种联系是父子之间的一对多的联系。层次数据库系统只能处理一对多的实体联系。1.2.4常用的数据模型29十月202329十月2023Page242.网状模型现实世界中事物之间的联系更多的是非层次关系的,用层次模型表示这种关系很不直观,网状模型克服了这一弊病,可以清晰的表示这种非层次关系。学生教室课程教师29十月2023Page253.关系模型关系数据模型是由IBM公司的E.F.Codd于1970年首次提出,以关系数据模型为基础的数据库管理系统,称为关系数据库系统(RDBMS),目前广泛使用。关系模型是建立在数学概念上的,与层次模型、网状模型相比,关系模型是一种最重要的数据模型。它主要由关系数据结构、关系操作集合、关系完整性约束三部分组成。实际上,关系模型可以理解为用二维表格结构来表示实体及实体之间联系的模型,表格的列表示关系的属性,表格的行表示关系中的元组。29十月2023Page2629十月2023Page27学号姓名性别出生时间出生地联系电话学分1801010101秦建兴男2000/5/5北京市18401101456131801010102张吉哲男2000/12/12上海市13802104456131801010103王胜男女1999/8/27广州市18624164512131801010104李楠楠女2000/8/25重庆市1390221142341801010105耿明男2000/7/15北京市18501174581131801020101贾志强男2000/4/29天津市15621010025131801020102朱凡男2000/5/1石家庄市1389630845701801020103沈柯辛女1999/12/31哈尔滨市15004511439131801020104牛不文女2000/2/14长沙市13316544789131801020105王东东男2000/3/5北京市18810111256131902030101耿娇女2001/5/25广州市15621014488101902030102王向阳男2001/3/15北京市18810101014101902030103郭波女2001/10/5重庆市18940110111101902030104李红女2001/9/5上海市1380210145831902030105王光伟男2001/1/25哈尔滨市18945103256104.面向对象模型面向对象数据模型是建立在面向对象程序设计中所支持的对象语义的逻辑数据模型,它是持久的和共享的对象集合,具有模拟整个解决方案的能力。面向对象数据模型把实体表示为类,一个类描述了对象属性和实体行为。29十月20231.3关系数据库基本原理1.3.1关系模型1.关系模型的基本概念一个关系对应于一张二维表。这个二维表是指含有有限个不重复行的二维表。在对E-R模型的抽象上,每个实体集和联系集在这里都转化为关系或称二维表,而E-R模型中的属性在这里转化为二维表的列,也可称为属性,每个属性的名称称为属性名,也可以称为列名。每个属性的取值范围称为该属性的域。关系模型允许定义四类完整性约束:实体完整性、域完整性、参照完整性和用户定义的完整性。29十月2023Page292.关系的性质关系是一种规范化了的二维表中行的集合。为了使相应的数据操作简化,在关系模型中对关系进行了限制,因此关系具有以下六条性质。(1)列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。(2)关系中的任意两个元组不能相同。(3)关系中不同的列来自不同的域,每一列有不同的属性名。(4)关系中列的顺序可以任意互换,不会改变关系的意义。(5)行的次序和列的次序一样,也可以任意交换。(6)关系中每一个分量都必须是不可分的数据项,元组分量具有原子性。29十月2023Page303.关系数据模型的操作与完整性约束(1)候选键(CandidateKey):如果关系中的某一属性或属性组的值能唯一地标识一个元组,则称该属性或属性组为候选键。(2)主键(PrimaryKey):若一个关系中有多个候选键,则选定一个为主键。主键也称主码。(3)主属性(PrimaryAttribute):主键的属性称为主属性。(4)外键(ForeignKey):设F是基本关系R的一个属性或属性组合,但不是R的键(主键或候选键),如果F与基本关系S的主键K相对应,则称F是R的外键,并称R为参照关系,S为被参照关系。外键也称外码。29十月2023Page311)实体完整性实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值,并且是唯一的。实体完整性规则规定基本关系的所有主属性项都不能取空值(NULL),而不仅是主属性整体不能取空值。【例1.2】有如下关系模式:(1)学生(学号,姓名,性别,出生时间,专业,总学分,照片,备注),其中,学号属性为主码,不能取空值,并且所有学生的学号值必须各不相同。(2)成绩(学号,课程号,成绩),其中学号、课程号属性组合为主码,两者都不能取空值。29十月2023Page322)参照完整性现实世界中的实体之间往往存在某种联系,在关系模型中,实体及实体间的联系都是用关系来描述的。这样就自然存在着关系与关系间的引用。先来看下面的例子。【例1.3】在学生管理关系数据库中,包括学生关系xs、课程关系kc和成绩关系cj,这三个关系分别为:xs(学号,姓名,性别,出生日期,专业,总学分,照片,备注)kc(课程号,课程名,学分,学时数)cj(学号,课程号,成绩)29十月2023Page33(3)域完整性域完整性是指关系中的列必须满足某种特定的数据类型或约束。可以强制域完整性限制类型、限制格式或限制值的范围等。例如限定性别列只能取值“男”或“女”。(4)用户定义完整性用户定义的完整性就是用户按照实际的数据库应用系统运行环境要求,针对某一具体关系数据库的约束条件。例如某个属性“成绩”的取值范围必须在0~100之间。用户定义完整性反映某一具体应用所涉及的数据必须满足的语义要求,保证数据库中的数据取值的合理性。29十月2023Page344.关系数据模型的存储结构在关系数据模型中,实体及实体间的联系都用关系表示。在关系数据库的物理组织中,有的DBMS一个表对就一个操作系统文件,有的DBMS从操作系统获得若干个大的文件,自己设计表、索引等存储结构。5.关系数据模型的优缺点关系数据模型具有下列优点:①关系模型与格式化模型不同,它是建立在严格的数学概念基础上的。②关系模型的概念单一。无论实体还是实体之间的联系都是用关系来表示。对数据的检索和更新结果也是关系。所以其数据结构简单清晰,用户易懂易用。③关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。29十月20231.3.2关系运算1.传统的集合运算传统的集合运算,包括并、交、差、广义笛卡尔积四种运算。设关系R和关系S具有相同的目n(即两个关系都具有n个属性),且相应的属性取自同一个域,则四种运算定义如下:(1)并关系R与关系S的并由属于R或属于S的元组组成,其结果关系仍为n目关系。记作R∪S。(2)交关系R与关系S的交由既属于R又属于S的元组组成,其结果关系仍为n目关系。记作R∩S。29十月2023Page36(3)差关系R与关系S的差由属于R而不属于S的所有元组组成。其结果关系仍为n目关系。记作R-S。(4)广义笛卡尔积两个分别为n目和m目的关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有A1个元组,S有A2个元组,则关系R和关系S的广义笛卡尔积有Al×A2个元组。记作R×S。29十月2023Page37ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RARBRCSASBSCa1b1c1a1b2c2a1b1c1a1b3c2a1b1c1a2b2c1a1b2c2a1b2c2a1b2c2a1b3c2a1b2c2a2b2c1a2b2c1a1b2c2a2b2c1a1b3c2a2b2c1a2b2c12.专门的关系运算包括选择、投影、连接、除等。(1)选择选择是在关系R中选择满足给定条件的诸元组,这是从行的角度进行的运算。29十月2023Page39选择运算学号姓名性别1801010101秦建兴男1801010102张吉哲男29十月2023Page40学号姓名性别1801010101秦建兴男1801010102张吉哲男1801010103王胜男女(2)投影关系R上的投影是从R中选择出若干属性列组成新的关系。投影操作是从列的角度进行的运算。因为投影运算的属性表不一定包含主键,经投影后,结果关系中很可能出现重复元组,消除重复元组后所得关系的元组数将小于原关系的元组数。如果属性表中包含主键,就不会出现重复元组,投影后所得关系的元组数与原关系的一样。29十月2023Page41姓名性别秦建兴男张吉哲男王胜男女29十月2023Page42投影运算学号姓名性别出生时间1801010101秦建兴男2000/5/51801010102张吉哲男2000/12/121801010103王胜男女1999/8/27(3)连接连接运算是二元关系运算,是从两个关系元组的所有组合中选取满足一定条件的元组,由这些元组形成连接运算的结果关系。其中条件表达式涉及到两个关系中属性的比较,该表达式的取值为逻辑的真或假。连接运算中最为常用的是等值连接和自然连接。等值连接是指对关系R和S中按相同属性的等值进行的连接运算,而自然连接是在等值连接中去掉重复列的连接运算。29十月2023Page43(4)除运算除运算是二元操作,并且关系R和S的除运算必须满足以下两个条件。①关系R中的属性包含关系S中的所有属性。②关系R中有一些属性不出现在关系S中。设T是R除以S的商,R为m元关系。S为n元关系,m>n,则T是一个m-n元关系。T的属性由R中那些不出现在S中的属性组成,T中的元组是R中的m-n元组,并且采用如下方法选出。①R元组中按与S元组属性部分不同的m-n元组进行分组,即这m-n元组相同的归为一组。②每组的其余n元组,如果满足包含S的n元组,则取出该组的一个m-n元组,添加到T中。29十月2023Page44第一步,确定结果属性:A,B第二步,确定目标数据集:{(c,d)(e,f)}第三步,确定结果属性像集:(a,b):{(c,d)(e,f)(h,k)}(b,d):{(e,f)(d,l)}(c,k):{(c,d)(e,f)}第四步,确定结果:(a,b)(c,k)
ABabck1.3.3关系数据库标准语言结构化查询语言(StructuredQueryLanguage,SQL)于1974年由IBM公司SanJose实验室推出,1987年,国际标准化组织(ISO)将其批准为国际标准。经过增补和修订,ISO先后推出了SQL89和SQL92(即SQL2)标准,而目前,已增加面向对象功能的SQL3标准即将发布。29十月2023Page46按照功能,SQL语言可分为以下4大部分。(1)数据定义语言(DataDefinitionLanguage,DDL)。用于定义、删除和修改数据模式,如定义基本表、视图、索引等操作。(2)查询语言(QueryLanguage,QL)用于查询数据。(3)数据操纵语言(DataManipulationLanguage,DML)。用于增加、删除、修改数据。(4)数据控制语言(DataControlLanguage,DCL)用于数据访问权限的控制。29十月2023Page471.问题的提出1)数据冗余太大2)更新异常3)插入异常4)删除异常1.3.4关系模型的规范化29十月20231.3.4关系模型的规范化2.函数依赖的基本概念定义1.1函数依赖:设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集。对于R(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称“X函数确定Y”或“Y函数依赖于X”,记作X→Y。29十月2023Page491)平凡函数依赖与非平凡函数依赖定义1.2在关系模式R(U)中,对于U的子集X和Y,如果X→Y,但Y不是X的子集,则称X→Y是非平凡函数依赖。若Y是X的子集,则称X→Y是平凡函数依赖。对于任一关系模式,平凡函数依赖都是必然成立的,它不反映新语义,因此,若不特别声明,本书总是讨论非平凡函数依赖。29十月20232)完全函数依赖与部分函数依赖定义1.3在关系模式R(U)中,如果X→Y,并且对于X的任何一个真子集,都有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 滑雪场地建设与维护合同书
- 深圳市冷冻水产品购销合同
- 重大突破:中国与尼日尔签订基础设施建设项目合同
- 正式婚后财产归属合同样本
- 设备采购与租赁合同样本
- 社区卫生服务中心药师聘用合同范本
- 建筑工程总承包合同中新防水工程条款
- 紧急设备配送及维护合同
- 楼盘分销代理合同范本
- 卫浴产品标准制定与质量认证考核试卷
- 上海话培训课件
- 注塑车间绩效考核方案
- 初中英语阅读理解专项练习26篇(含答案)
- 诵读经典传承文明课件
- 高中数学选择性必修3 教材习题答案
- 智能语音技术与应用-基于Python实现(高职)全套教学课件
- 北师大版二年级下册数学第一单元 除法教案
- 2024年儿童托管行业分析报告及未来发展趋势
- 野生动植物保护
- 2024年安徽省合肥热电集团招聘笔试参考题库含答案解析
- 核心素养导向的作业设计
评论
0/150
提交评论