上海大学数据库原理一-复习

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《数据库原理一》课程复习2021年3月3日第1章数据库发展史1.数据管理技术的发展(特点)人工管理阶段、文件系统阶段、倒排文件系统;文件系统的缺陷(数据冗余性、数据不一致性、数据联系弱)2.数据库技术的产生进入数据库阶段的标志是20世纪60年代末的三件大事:1968年IBM公司研制的IMS系统-----------------典型的层次DBS;1969年美国CODASYL组织DBTG报告提出---------网状DBS的概念;1970年美国IBM公司的E.F.Codd发表的论文提出---关系模型的思想数据库阶段的特点:①采用数据模型表示复杂的数据结构(数据库的三级体系结构);②有较高的数据独立性(逻辑数据独立性、物理数据独立性);③数据库系统为用户提供了方便的用户接口;④数据库系统提供四方面的数据控制功能:数据库的并发控制,数据库的恢复,数据的完整性,数据安全性。⑤对数据的操作以数据项为单位,增加了系统的灵活性。3.数据库技术的术语DB、DBS、DBMS、DBA4.数据库技术的发展第2章数据库系统结构1.数据描述从事物的特性到计算机中的具体表示,分别经历了三个阶段:现实世界-概念世界-数据世界不同阶段的抽象(转换)称为:概念设计、逻辑设计不同阶段的数据描述:概念设计中的数据描述(实体、属性、实体集、实体标识符)逻辑设计中的数据描述(记录、字段、文件、关键码)物理设计中的数据描述(位、字节、字、块、桶、卷)2.数据联系的描述联系的元数:与一个联系有关的实体集的个数联系的类型:一对一(1:1)一对多(1:n)多对多(m:n)3.数据模型的概念:表示实体类型及实体间联系的模型概念数据模型(对现实世界的第一层抽象)(E-R模型)是按用户的观点对数据建模,强调其语义表达能力。(独立于计算机系统的模型,用于建立信息世界的数据模型)。逻辑数据模型“结构数据模型”:(对现实世界的第二层抽象)是直接面向数据库的逻辑结构,与DBMS有关。(层次、网状、关系模型)逻辑数据模型:面向数据库逻辑结构的模型。逻辑数据模型包含(三要素):数据结构、数据操作和数据完整性约束。数据结构是指对实体类型和实体间联系的表达和实现;数据操作是指对数据库的检索和更新(包括插入、删除、修改)两类操作的实现;数据完整性约束给出数据及其联系应具有的制约和依赖规则。逻辑数据模型主要有:层次模型:用树型结构来表示实体类型及实体之间联系的模型称为层次模型。(数据之间的联系通过指针实现)网状模型:用有向图结构表示实体类型及实体间联系的模型称为网状模型。(数据之间的联系通过指针实现)关系模型:用二维表格结构来表示实体集。(数据之间的联系是通过外键和主键间联系实现的即:公共属性…)面向对象模型:数据之间嵌套、递归联系是通过对象标识符实现用户1用户2用户n外(子)模式局部逻辑结构外模式/模式映射(逻辑独立性)模式全局逻辑结构模式/内模式映射(物理独立性)内模式数据库的物理结构4.数据库的体系结构三级结构和两级映象级别:外部级、全局级、内部级模式:子(外)模式、模式、存储(内)模式结构:局部逻辑结构、全局逻辑结构、物理结构数据独立性定义两级数据独立性:物理数据独立性、逻辑数据独立性5.数据库管理系统DBMS的工作模式:应用程序DBMSDB数据请求低层指令数据(处理结果)数据(查询结果)DBOSDBMS数据字典应用程序DB的系统缓冲区外模式模式内模式用户访问数据的过程:DBMS的主要功能:1.数据库的定义功能2.数据库的操纵功能3.数据库的保护功能4.数据库的维护功能5.数据字典6、数据库系统DBSDBS的组成:数据库DB硬件软件(OS、DBMS、应用系统)数据库管理员DBA第3章关系运算1、基本概念关系的定义和特点关系:域、关系、属性、元组关系模型:用二维表格表示实体集,用关键码表示实体间联系的数据模型;关键码:超码、全码、候选码、主码和外来码三类完整性规则:实体完整性规则、参照完整性规则、用户定义的完整性规则关系运算包括:关系代数和关系演算两类。1、关系代数(P.42—P.51)理论基础:集合运算五个基本运算(并、差、笛卡儿积、投影、选择);四个复合运算(交、联接(ɵ,F,等值)、自然联接、除);三个扩充的关系代数运算(外联接、外部并、半联接);2、关系演算(P.52-P.56)理论基础:谓词演算元组关系演算和域关系演算3、SQL语言:介于关系代数与关系演算之间的语言4、查询优化(P.57-P.64)关系代数表达式的优化问题;关系代数表达式的等价变换规则;优化的策略;优化算法关系代数表达式及运用技巧(1)一般规则选投连表达式对于只涉及到选择、投影、联接的查询可用下列表达式表示:π…(σ…(R×S))或者π…(σ…(R⋈S))(2)对于否定的操作,一般要用差操作表示;例如:“检索不学C2课的学生姓名”。不能用下式表示:πSNAME,AGE(σCNO≠'C2'(S⋈SC))一般要用“差”的形式:πSNAME,AGE(S)-πSNAME,AGE(σCNO='C2'(S⋈SC))(3)对于具有“全部”或“包含”问题的检索,一般要用除法操作表示。例:“检索学习全部课程的学生学号”:πSNO,CNO(SC)÷πCNO(C)不能表示为:πSNO(SC÷πCNO(C))第4章关系数据库语言SQL1.SQL的数据定义:SQL模式、基本表和索引的创建和撤销,SQL提供的数据类型、主键外键定义。2.SQL的数据查询:SELECT语句的格式,单表和多表查询,基本表的联接操作,聚合和分组,集合操作。3.SQL的数据更新:插入、删除和修改语句。4.SQL的数据控制:数据库安全性完整性一致性控制。5.视图:基于基表和(或)视图定义的数据库子集。6.嵌入式SQL:预处理方式,使用规定,使用技术。内容分析SELECT语句是SQL的核心内容,应掌握下列内容。1.SELECT语句的来历在关系代数中最常用的式子是下列表达式:πA1,…,An(σF(R1×…×Rm))这里R1、…、Rm为关系,F是公式,A1、…、An为属性。为此SQL设计成SELECT—FROM—WHERE句型:SELECTA1,…,AnFROMR1,…,RmWHEREF该句型是从关系代数表达式演变来的,但WHERE子句中的条件表达式F要比关系代数中公式更灵活。2.SELECT语句中出现的基本表名,应理解为基本表中的元组变量,而列名应理解为元组分量。3.SQL查询中注意UNION、INTERSECT、EXCEPTEXISTSNULL值SQL的数据更新:插入、删除和修改语句(P.89-P.91)数据插入1、插入单个元组:INSERTINTO基本表名(列名表)VALUES(元组值)2、插入子查询的结果:INSERTINTO基本表名(列名表)SELECT查询语句;数据删除删除关系中满足条件的元组语句的句法如下:DELETEFROM表名WHERE条件表达式数据修改UPDATE基本表名SET列名=值表达式[,列名=值表达式…][WHERE条件表达式]视图的更新操作(P.91-P.92)-行列子集视图允许更新操作对于视图元组的更新操作(INSERT、DELET、UPDATA),有以下三条规则:①如果一个视图是从多个基本表使用联接操作导出的,那么不允许对这个视图执行更新操作。②如果在导出视图的过程中,使用了分组和聚合操作,也不允许对这个视图执行更新操作。③如果视图是从单个基本表使用选择、投影操作导出的,并且包含了基本表的主键或某个候选键,那么这样的视图称为“行列子集视图”,并且可以被执行更新操作。在SQL2中,允许更新的视图在定义时,必须加上“WITHCHECKOPTION”短语。索引的创建和撤消为提供查询的速度,可以为表中的一个或多个字段建立索引。大多数DBMS主健字段系统已经自动建立索引。索引可分为:唯一性索引非唯一性索引什么时候建立索引SQL语言同一语法,两种使用形式:自含式、嵌入式嵌入式SQL的使用和实现,有两种处理方式:1、扩充宿主语言的编译程序,使之能处理SQL语句;2、采用预处理方式。目前多数系统采用后一种方式。目标程序宿主语言十嵌入式SQL预处理程序宿主语言十函数调用宿主语言编译程序第六章实体联系模型实体联系模型(ER模型):概念模型设计方法实体与属性的基本概念、属性的分类联系的元数、连通词、基数。扩展的实体联系模型的表示方法;使用实体联系模型进行概念设计的方法ER模型到关系模型的转换规则概念数据模型--实体联系模型(ER模型)在ER模型中有四个基本成分:矩形框表示实体类型;菱形框表示联系类型(实体间的联系);椭圆形框表示实体类型和联系类型的属性;用直线连接:实体与属性;联系与属性;实体与实体;相应的命名均记人各种框中。对于关键码的属性,在属性名下划一横线。学生课程选课N(1,10)M(0,60)性别学号姓名年龄学分学时课名课号选课时间成绩ER图:1.矩形表示实体;2.菱形表示联系;3.椭圆表示实体或联系的属性;简化的ER图属性不标注在ER图上,单独列出实体与属性1.实体、实体集:客观存在可以相互区分的事物。2.属性:基本属性、复合属性、多值属性联系的元数:联系的连通词:联系的基数:相互联系的实体的个数。有一元联系、二元联系、多元联系涉及到的实体集之间实体对应的方式。即参加联系的实体的数目,分:一对一(1:1)、一对多(1:N)、多对多(N:M)联系的连通词也称为联系的性质有两个实体集E1和E2,E1中的每个实体与E2中有联系实体数目的最小值Min和最大值Max,称为E1的基数,用(Min,Max)表示。联系:建立ER模型的步骤如下:首先确定实体类型和联系类型,接着把实体类型和联系类型组合成ER图;然后确定实体类型和联系类型的属性,再确定实体类型的键,在属于键的属性名下划一横线。E-R模型转换为关系模型:1.每个实体集转化为一个关系模式,属性包含实体的所有属性;2.1:1和1:N联系,在多方的关系模式中加入一方的关键字属性和联系的所有属性;3:N:M联系和多元联系,单独建立一个关系模式,属性包括相关各方的关键字属性并作为该关系模式的主键,同时加入联系的所有其它属性。注意:如果联系是多次发生(比如:时间)的属性,则应作为主键中的一个属性。E-R模型转换为关系模型:1.每个实体集转化为一个关系模式,属性包含实体的所有属性;2.1:1和1:N联系,在多方的关系模式中加入一方的关键字属性和联系的所有属性;3:N:M联系和多元联系,单独建立一个关系模式,属性包括相关各方的关键字属性并作为该关系模式的主键,同时加入联系的所有其它属性。注意:如果联系是多次发生(比如:时间)的属性,则应作为主键中的一个属性。扩展的ER模型转换(1)弱实体若实体间的联系是1:N的,而且在N端实体类型为弱实体,转换成的关系模式中将1端实体类型(父表)的键作为外键放在N端的弱实体(子表)中。弱实体的主键由父表的主键与弱实体本身的候选键组成。也可以为弱实体建立新的独立的标识符ID。(2)超类和子类的转换将超类和子类各转换成一个关系模式,在子类转换成的关系模式(子表)中加入超类转换成关系模式(父表)的键,从而实现父表与子表的联系。由于父表与子表的主键相同,所以子表的主键也是外键。

1 / 37
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功