已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库系统概论期末复习重点第一章. 绪论(一) 数据、数据库、数据库管理系统和数据库系统相关概念:1. 数据(Data):描述事物的符号记录。数据与其语义密不可分。2. 数据库(DataBase,简称 DB):永久存储、有组织、可共享是数据库的三个基本特点。3. 数据库管理系统(DataBase Management System,简称 DBMS):数据库管理系统是位于用户与操作系统之间的一层数据管理软件,其任务是科学、高效地管理数据库中的数据。数据库管理系统的主要功能有:1) 数据定义功能 2) 数据操纵功能3) 数据组织、存储和管理4) 数据库的事务管理和运行管理5) 数据库的简历和维护功能6) 其他功能:如 DBMS 与网络中其他软件系统的通信功能、异构数据库之间的互访和互操作功能、多个 DBMS 之间的数据转换功能等。4. 数据库系统(DataBase System,DBS):在计算机系统中引入数据库后的系统,由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(DataBase Administrator,DBA)构成。(二) 数据管理技术的发展:1. 人工管理阶段:主要出现于 20 世纪 50 年代中期以前,数据处理方式为批处理。其特点为:1) 数据不保存2) 应用程序管理数据3) 数据不共享4) 数据不具有独立性2. 文件系统阶段:20 世纪 50 年代后期到 60 年代中期,其特点是:1) 数据可以长期保存2) 由专门的软件系统(文件系统)管理数据但文件系统仍然存在以下不足:数据共享性差、冗余度大、数据独立性差3. 数据库系统阶段:20 世纪 60 年代至今。其特点是:1) 数据结构化2) 数据的共享性高,冗余度低,易扩充3) 数据的独立性高4) 数据由 DBMS 同一管理和控制二、 数据模型: (一) 两类数据模型:第一类是概念模型(对客观事物建模,用于数据库设计),第二类是逻辑模型(层次、网状、关系。)和物理模型(磁盘存取方式)。(二) 数据模型的三大组成要素:1. 数据结构(对象与对象之间的联系)2. 数据操作(数据库中对各种对象操作的集合)3. 数据完整性约束条件(实体完整性,参照完整性,用户自定义完整性)(三) 三大类(逻辑)数据模型:层次模型、网状模型、关系模型是常用的三大逻辑数据模型。三、 概念模型的表示方法:E-R 图。(一) 相关概念:1. 实体:客观存在并可相互区别的事物。在 E-R 图中,实体用码(码的定义见下)来区分。2. 属性:实体所具有的某一特性。3. 码(Key):唯一标识实体的属性集。4. 域(Domain):一组具有相同数据类型的值的集合。如性别的域为(男,女)。5. 实体型(Entity Type):用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。如学生(学号,姓名,性别,出生年月,所在院系)就是一个实体型。6. 实体集(Entity Set):同一类型实体的集合。如全体学生就是一个实体集。7. 联系(Relationship):在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。联系包括 1:1 联系、1:n 联系(一对多)、m:n 联系(多对多)。(二) E-R 图的表示方法:四、 数据库系统结构:(一) 数据库系统的三级模式:1. 模式(Schema):数据库中全体数据的逻辑结构和特征的描述。2. 三级模式:外模式、模式、内模式。(二) 数据库系统的二级映像:1. 外模式/模式映像(逻辑独立性)2. 模式/内模式映像(物理独立性)3. 二级映像的意义:使得数据的定义和描述可以从应用程序中分离出去,简化应用程序编制,减少应用程序的维护和修改第二章. 关系数据库一、 基本概念:1. 笛卡尔积(基数为各元素之积p39)、关系R(D1,D2Dn,关系是笛卡尔积的有限子集)、属性、候选码(某一属性能唯一识别一个元组,而其子集不能)、主码(候选码中选一个)、外码(不是R的候选码,但是与另外一个关系S的候选码相对应,称它为R的外码)、主属性(候选码主属性)、非主属性(不含在任何候选码中)、全码(关系模式中所有属性)2. 关系的三种类型:1)基本表:实际存在的表,它是实际存储数据的逻辑表示。如用 SQL 语句“CREATETABLE”创建的就是基本表。2)查询表:查询结果对应的表。如 SQL 语句中“SELECT”执行结果就是一个查询表。3)视图表:由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。如 SQL 语句中“CREATE VIEW”创建的就是视图表。3. 关系的性质1)列是同质的,即每一列中的分量来自同一个域(即数据类型相同);2)不同的列可出自同一个域,但必须为它们附加一个不同的属性名来区分;3)列的顺序无所谓;4)任意两个元组的候选码不能相同;5)行的顺序无所谓;6)分量必须取原子值;(这是关系模型规范化条件中最基本的一条)注:在许多实际关系数据库产品中,基本表并不一定完全具有这 6 条性质。12. 关系模式 二、 关系模型:1. 数据结构:关系模型的数据结构很简单,就是关系。2. 数据操作(关系操作):1) 基本关系操作:查询(Query):选择(select)、投影(Project)、连接(Join)、除(Divide)、并(Union)、差(Except)、交(Intersection)、笛卡尔积等(新关系的属性个数=n+m。元组的个数=n*m)。其中,选择、投影、差、并、笛卡尔积是五种基本操作,其他操作可由基本操作导出。更新:插入(Insert)、删除(Delete)、修改(Update)。2) 关系数据语言:关系代数:用对关系的运算来表达查询要求。关系演算:用谓词表达查询要求。SQL:介于关系代数和关系演算之间的结构化查询语言,集数据查询、数据操纵、数据控制、数据定义功能于一体,是关系数据库的标准语言。详见第三章“关系数据库标准语言 SQL”。3. 完整性约束:关系模型中有三类完整性约束,即实体完整性、参照完整性、用户定义的完整性。其中,前两个是关系模型必须满足的完整性约束条件,被称作关系的两个不变性。1)实体完整性(主键不为空)2)参照完整性(若属性(组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定不同),则对于R中的每个元组在F上的取值必须为空或基本关系S中某个元组中的主码)3)用户定义的完整性(满足语意要求)三、 关系代数(P49)第三章、关系数据库标准语言 SQL一、 SQL 语言的特点: (一) 综合统一(二) 高度非过程化(三) 面向集合的操作方式(四) 以同一种语法结构提供多种使用方式(五) 语言简洁,易学易懂二、数据定义、数据查询、数据更新1.定义表 CREATE TABLE ( , , , ); 例 建立 “学生选课表” SC,它由学号Sno、课程号Cno,成绩Grade组成,其中(Sno, Cno)为主码。 CREATE TABLE SC( Sno CHAR(9) , Cno CHAR(3) , Grade int CHECK (Grade=0 and Grade=100), Primary key (Sno, Cno), ); 2. 查询语句 SELECT FROM WHERE ;GROUP BY . HAVING ORDER BY ASC|DESC ;常用查询: (1) 单表查询 (2) 连接查询 (3) 嵌套查询 (4) 集合查询 (1)单表查询一般形式 SELECT FROM WHERE ; 例1:查询所有年龄在20岁以下的学生姓名及其年龄。 SELECT Sname,Sage FROM Student WHERE Sage 20; 例2:查询选修了课程的学生学号。 SELECT DISTINCT Sno FROM SC; 例3:查询年龄在20岁以下的姓王的学生姓名及其年龄。 SELECT Sname,Sage FROM Student WHERE Sage20 AND Sname LIKE 王%; (2) 连接查询一般形式 SELECT ROM , WHERE AND ; 外链接查询一般形式 SELECT FROM JOIN ON WHERE ; 例1:查询选修2号课程且成绩在90分以上的所有学生的学号、姓名 SELECT Student.Sno, student.Sname FROM Student, SC WHERE Student.Sno=SC.Sno AND /* 连接条件*/ SC.Cno= 2 AND /* 其他限定条件 */ SC.Grade 90; /* 其他限定条件 */ (3) 嵌套查询一般形式 SELECT FROM WHERE SELECT FROM WHERE SELECT FROM WHERE 嵌套查询分类 不相关子查询 子查询的查询条件不依赖于父查询 相关子查询 子查询的查询条件依赖于父查询 例1:不相关子查询 常用IN嵌套 查询所有选修了1号课程的学生姓名。 SELECT Sname /*外层查询/父查询*/ FROM Student WHERE Sno IN (SELECT Sno /* 内层查询/子查询*/ FROM SC WHERE Cno= 1 ); 例2: 相关子查询,常用EXISTS嵌套 查询所有选修了1号课程的学生姓名。 SELECT Sname FROM Student WHERE EXISTS (SELECT * FROM SC /*相关子查询*/ WHERE SC.Sno=Student.Sno AND Cno= 1); 3 .聚集函数 COUNT( ) SUM( ) AVG( ) MAX( ) MIN( ) 聚集函数经常在select目标列中或在Group子句的Having条件中使用; 聚集函数不能作为Where子句中的条件表达式 例:查询每个系学生的平均成绩。 SELECT Sdept,AVG(Grade) FROM Student,SC WHERE student.Sno=SC.Sno GROUP BY S.Sdept; 4. 数 据 更 新 (插入数据) INSERT INTO ( , ) VALUES ( , ); 例: INSERT INTO SC (Sno,Cno,Grade) VALUES ( 20095020 , 1 ,90); 注:sql99还支持插入子查询 5. 建立视图 CREATE VIEW ( ,) AS ; 例:建立考试成绩为优的学生的成绩单视图,包括学生的学号、课程名和成绩。 CREATE VIEW 成绩单 AS SELECT SC.Sno,C,SC.Grade FROM SC , Course WHERE SC.Cno=Course.Cno AND SC.Grade=90; 注:组成视图的属性列名或者全部省略或者全部指定,没第三种选择。 第五章 第四章. 数据库安全性一、 计算机安全性概述。二、 安全机制设计目标:使得那些试图破坏安全的人所花费的代价远远超过他们所得到的利益。三、 数据库安全性控制:(一) 用户标识与鉴别:系统提供的最外层安全保护措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份,常用的方法如用户名和口令形式。(二) 存取控制:其作用是确保只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据。1. 存取控制的内容:1) 定义用户权限,并将用户权限登记到数据字典中2) 合法权限检查2. 存取控制的两种实现方式:1) 自主存取控制(DAC)2) 强制存取控制(MAC)(三) 视图机制:为不同的用户定义不同的视图,把数据对象限制在一定的范围内。通过视图机制可以把要保密的数据对无权存取的用户隐藏起来。在数据库中可以通过 SQL 语句中的 CREATE VIEW 创建视图。(四) 审计1. 用户级审计2. 系统级审计(五) 数据加密:替换方法和置换方法。四、 统计数据库特殊的安全性问题:见课本 第五章. 数据库完整性一、 RDBMS 的完整性控制包括三个方面:(一) 提供定义完整性约束条件的机制(二) 提供完整性检查的方法(三) 违约处理二、 实体完整性:(一) 完整性定义:PRIMARY KEY (p159)(二) 检查和违约处理:用 PRIMARY KEY 定义了主码后,当用户程序对基本表插入一条记录或对主码将进行更新操作时,RDBMS 将进行以下检查:1. 检查主码值是否唯一,如果不唯一则拒绝插入或修改;2. 检查主码的各个属性是否为空,只要有一个为空就拒绝插入或修改。注:为了避免检查主码时进行全表扫描(全表扫描十分费时),RDBMS 会自动在主码上建立一个索引,以提高检查效率。三、 参照完整性:(一) 完整性定义详见课本 (p160)用FOREIGN KEY定义哪些列为外码,用REFERENCES指明这些外码参照哪些表的主码如:FOREIGN KEY (Sno)REFERENCES Student(Sno)(二) 检查和违约处理四、 用户定义的完整性:(一) 完整性定义属性上约束条件定义:(1) 列值非空:Not NULL(2) 列值唯一:UNIQUE(3) 检查列值是否满足一个条件表达式(CHECK短句)完整性约束条件作用的对象可以是列、元组、关系 关系模型的完整性在CREATE TABLE语句中定义 例:定义“学生选课表” SC表中 的完整性。 CREATE TABLE SC( Sno CHAR(9) , Cno CHAR(4) , Grade int CHECK (Grade=0 and Grade=100), Primary key (Sno, Cno), Foreign KEY(Sno) REFERENCES Student (Sno), Foreign KEY(Cno) REFERENCES Course (Cno);(二) 检查和违约处理五、 完整性约束命名子句CONSTRAINT (4) 完整性约束条件包括:Not NULL、UNIQUE、PRIMARY KEY、FOREIGN KEY、CHECK等第六章. 关系数据理论一、 规范化:一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式的集合,这个过程就叫做规范化。(一) 规范化要解决的问题:数据冗余、插入异常、删除异常、更新异常。详细解释请参照课本 (二) 函数依赖的类型:一个学号对应一个学生,一个学生就读一个确定的系,所以当学号确定,姓名和所在系也就确定,所有可以收姓名和系函数依赖于学号1. 平凡函数依赖2. 非平凡函数依赖3. 完全函数依赖课程号决定课程4. 部分函数依赖5. 传递函数依赖(三) 范式:1. 第一范式(1NF):无重复的列 2. 第二范式(2NF):属性完全依赖于主键(消除
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 复合超硬材料制造工创新应用考核试卷含答案
- 电梯电气装配工持续改进考核试卷含答案
- 中药调剂员岗前日常考核试卷含答案
- 水路危险货物运输员安全知识竞赛水平考核试卷含答案
- 公司丁辛醇装置操作工设备安全技术规程
- 飞机铆装工岗位工艺技术规程
- 消化系统疾病宣教
- 胆结石病情解读及护理措施
- 腹部训练小班课件
- 矿用高空作业车司机安全意识竞赛考核试卷含答案
- 《自我管理》课件-7. 第四单元第二课 提高自律能力
- 新禽病诊断与防治知识培训课件
- 财务共享服务2025年发展趋势与挑战研究报告
- 2025至2030热继电器市场前景分析及行业项目调研及市场前景预测评估报告
- 2024人教版八年级数学上册 第十四章 全等三角形 用角平分线构造全等三角形 专项练(含答案)
- 配电安全操作规程
- 2025智联招聘行测题库及答案解析
- 窦性心律失常课件
- 2024中国中信金融资产管理股份有限公司广西分公司招聘7人笔试备考题库含答案详解
- 2025燃气公司笔试题及答案
- 肌内效贴扎技术及临床应用
评论
0/150
提交评论