《数据库及程序设计》总复习课件PPT格式课件下载.ppt
《《数据库及程序设计》总复习课件PPT格式课件下载.ppt》由会员分享,可在线阅读,更多相关《《数据库及程序设计》总复习课件PPT格式课件下载.ppt(62页珍藏版)》请在冰豆网上搜索。
三三.数据库系统数据库系统基于数据库的计算机应用系统基于数据库的计算机应用系统1.21.2数据库管理技术的产生与发展数据库管理技术的产生与发展三个阶段:
三个阶段:
l人工管理阶段人工管理阶段l文件系统阶段文件系统阶段l数据库系统阶段数据库系统阶段其中数据库技术的特点l数据结构化。
数据结构化。
l数据共享性数据共享性高高、冗余度、冗余度低低。
l数据独立性高。
数据独立性高。
l数据由数据由DBMSDBMS集中管理集中管理l方便的用户接口方便的用户接口1.31.3数据库系统的模式结构数据库系统的模式结构l从数据库管理系统的角度看,数从数据库管理系统的角度看,数据库系统通常采用三级模式结构。
据库系统通常采用三级模式结构。
l外模式、模式和内模式外模式、模式和内模式l两级映射两级映射要求掌握三级模式的定义和三者之要求掌握三级模式的定义和三者之间的映射关系!
间的映射关系!
三级模式结构三级模式结构用户A1用户用户A2A2用户用户B1B1用户用户B2B2视图视图AA视图视图BB基本表基本表存储数据库存储数据库(内视图)(内视图)DBMS外模式外模式AA外模式外模式BB概念模式概念模式(模式)(模式)存储结构定义存储结构定义(内模式)(内模式)由数据由数据库管理库管理员建立员建立和维护和维护的模式的模式一、外模式一、外模式l外模式也称子模式或用户模式,是数外模式也称子模式或用户模式,是数据库用户(包括应用程序员和最终用据库用户(包括应用程序员和最终用户)看见和使用的局部数据的逻辑结户)看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的据视图,是与某一应用有关的数据的逻辑表示。
逻辑表示。
二、模式二、模式l模式也称概念模式,是数据库中的数模式也称概念模式,是数据库中的数据在逻辑级上的视图,是数据库中全据在逻辑级上的视图,是数据库中全体数据的逻辑结构和特征的描述。
它体数据的逻辑结构和特征的描述。
它通常以某一数据模型为基础,定义数通常以某一数据模型为基础,定义数据库全部数据逻辑结构。
据库全部数据逻辑结构。
三、内模式三、内模式l内模式也称存储模式。
它既定义了数内模式也称存储模式。
它既定义了数据库中全部数据的物理结构,还定义据库中全部数据的物理结构,还定义了数据的存储方法、存取策略等。
了数据的存储方法、存取策略等。
四、两种映射l外模式到模式的映射(逻辑独立性)外模式到模式的映射(逻辑独立性)l模式到内模式的映射(物理独立性)模式到内模式的映射(物理独立性)1.4逻辑数据模型l数据模型描述了数据库中的数据数据模型描述了数据库中的数据内容及其联系方式,体现了数据内容及其联系方式,体现了数据库的逻辑结构。
库的逻辑结构。
l不同的数据模型就是用不同的数不同的数据模型就是用不同的数据组织形式来表达实体及其联系。
据组织形式来表达实体及其联系。
一.层次模型l层次模型是将数据组织成有向有层次模型是将数据组织成有向有序的树结构,也叫序的树结构,也叫树形结构树形结构。
(反映数据之间的反映数据之间的隶属隶属关系关系)l层次模型是数据库技术中发展最层次模型是数据库技术中发展最早、技术上比较成熟的一种数据早、技术上比较成熟的一种数据模型。
模型。
二.网状模型现实世界中实体集间的联系更多的现实世界中实体集间的联系更多的是非层次关系,层次模型难以直观的表是非层次关系,层次模型难以直观的表现这种联系树的集合,网状模型克服了现这种联系树的集合,网状模型克服了它的局限性,可以清晰灵活地表示这种它的局限性,可以清晰灵活地表示这种非层次关系。
非层次关系。
三.关系模型l关系模型是用关系模型是用二维表格二维表格数据来表数据来表示实体及实体之间联系的模型。
示实体及实体之间联系的模型。
l一个表就是一个关系。
一个表就是一个关系。
l一张表格中的一列称为一个一张表格中的一列称为一个“属属性性”,相当于记录中的一个数据项,相当于记录中的一个数据项(或称为字段),属性的取值范围(或称为字段),属性的取值范围称为域。
称为域。
第二章第二章关系代数理论关系代数理论l五个重要概念五个重要概念l三类完整性约束三类完整性约束l八个关系代数运算符八个关系代数运算符2.12.1五个重要的概念五个重要的概念l候选码候选码l主码主码l外码外码l主属性主属性l非主属性非主属性要求掌握各个概念的定义!
要求掌握各个概念的定义!
l候选码(候选码(CandidateKey):
能唯):
能唯一表示关系中元组的一个属性或属一表示关系中元组的一个属性或属性集。
称为候选码,也称候选关键性集。
称为候选码,也称候选关键字。
字。
如:
“学生关系学生关系”中学号能唯一标中学号能唯一标识每个学生,则属性识每个学生,则属性“学号学号”是学是学生关系的候选码。
生关系的候选码。
候选码l主码(主码(PrimaryKey):
如果一个关):
如果一个关系中有多个候选码,可以从中选择一系中有多个候选码,可以从中选择一个作为查询、插入或删除元组的操作个作为查询、插入或删除元组的操作变量,被选中的候选码称为主关系码,变量,被选中的候选码称为主关系码,或简称主码、主键、主关键字等。
或简称主码、主键、主关键字等。
l每个关系必须有且仅有一个主码。
每个关系必须有且仅有一个主码。
主码l外码(外码(ForeignKey):
设):
设F是基本是基本关系关系R的一个或一组属性,但不是关的一个或一组属性,但不是关系系R的主码(或候选码)。
如果的主码(或候选码)。
如果F与与基本关系基本关系S的主码的主码K相对应,则称相对应,则称F是是基本关系基本关系R的外部关系码,可简称外的外部关系码,可简称外码。
码。
外码l定义5.17设有一关系模式r(R),R。
若包含在r(R)的某个候选码中,则称为主属性,否则为非主属性。
l在SCE关系中,属性集studentNo,courseNo是SCE的唯一候选码。
因此,属性studentNo和courseNo为主属性,其余属性为非主属性。
主属性与非主属性2.22.2关系的完整性约束关系的完整性约束关系模型中允许定义三类完整性:
关系模型中允许定义三类完整性:
实实体完整性、参照完整性和用户定义的完整体完整性、参照完整性和用户定义的完整性性。
其中实体完整性和参照完整性是关系其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,是由关模型必须满足的完整性约束条件,是由关系数据库系统自动支持的。
而用户定义的系数据库系统自动支持的。
而用户定义的完整性是应用领域需要遵循的条件,体现完整性是应用领域需要遵循的条件,体现在具体领域中的语义约束。
在具体领域中的语义约束。
一、实体完整性:
l规则规则2.1实体完整性规则:
实体完整性规则:
若若属属性性A是是基基本本关关系系R的的主主属属性性,则则属性属性A不能取空值。
不能取空值。
l如如:
在在学学生生档档案案表表里里,由由于于“学学号号”是是基基本本关关系系的的主主属属性性,则则“学学号号”值值不不能能为为空空值值,学学生生的的其其他他属属性性可可以以是是空空值值,如如“年年龄龄”值值或或“性性别别”值值如如果果为为空空,则则表表明明不不清楚该学生的这些特征值。
清楚该学生的这些特征值。
二、参照完整性:
l规则规则2.2参照完整性规则:
参照完整性规则:
若属性(属性组)若属性(属性组)F是基本关系是基本关系R的外的外码,它与基本关系码,它与基本关系S的主码的主码K相对应(基相对应(基本关系本关系R和和S不一定是不同的关系),则不一定是不同的关系),则对于对于R中每个元组在中每个元组在F上的值必须为:
上的值必须为:
(1)或者取空值()或者取空值(F的每个属性值均为空的每个属性值均为空值);
值);
(2)或者等于)或者等于S中某个元组的主码值。
中某个元组的主码值。
三、用户定义的完整性l用户定义的完整性约束:
用户定义的完整性约束:
就是针对某一具体关系数据库的约就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。
数据必须满足的语义要求。
例如:
在学生关系中,学生年龄分量的例如:
在学生关系中,学生年龄分量的取值范围应该限定在取值范围应该限定在1830岁,学生考岁,学生考试的成绩必须在试的成绩必须在0100之间,学生的性之间,学生的性别应该为男或女等。
别应该为男或女等。
2.32.3关系代数关系代数习题习题RSl求求RS,RS,RS,RSl求求A=a1(R),A,B(S),RSRS(R.B=S.B)ABCa1b1c1a3b4C6a1b2c1a2b2c1a1b2c3a3b2c1RSABCa1b1c1a1b2c3RSABCa3b4C6a1b2c1a2b2c1RSR.AR.BR.CS.AS.BS.Ca1b1c1a1b1c1a3b4c6a1b1c1a1b2c1a1b1c1a2b2c1a1b1c1a1b2c3a1b1c1a1b1c1a1b2c3a3b4c6a1b2c3a1b2c1a1b2c3a2b2c1a1b2c3a1b2c3a1b2c3a1b1c1a3b2c1a3b4c6a3b2c1a1b2c1a3b2c1a2b2c1a3b2c1a1b2c3a3b2c1RSA=a1(R)ABCa1b1c1a1b2c1a1b2c3A,B(S)ABa1b1a1b2a3b2R.AR.BR.CS.AS.BS.Ca1b1c1a1b1c1a1b2c1a1b2c3a2b2c1a1b2c3a1b2c3a1b2c3a1b2c1a3b2c1a2b2c1a3b2c1a1b2c3a3b2c1RS(R.B=S.B)第三章第三章SQLSQL语言语言SQL包括四大功能:
数据定义、包括四大功能:
数据定义、数数据查询、数据操纵据查询、数据操纵和数据控制。
和数据控制。
3.1SELECT命令(查询元组)SELECTSELECTALL|DISTINCTALL|DISTINCTFROMFROM,WHEREWHEREGROUPBYGROUPBYHAVINGHAVINGORDERBYORDERBYASC|DESC2ASC|DESC;
3.2INSERT命令(插入元组)插入数据为元组值的时候,使用插入数据为元组值的时候,使用VALUESVALUES