1、数据库系统概论复习资料数据库系统概论复习资料第一章 绪论 本章内容:数据库系统概述、数据模型、数据库系统结构 本章主要考点: 数据、数据库、数据库管理系统的概念、概念模型、ER图、三种数据模型、数据库的三级模式结构1、试述数据、数据库、数据库系统、数据库管理系统的概念(1)数据(Data) :描述事物的符号记录称为数据。(2)数据库(Data Base ,简称 DB ):数据库是长期储存在计算机内的、有组织的、可共享的数据集合。(3)数据库系统(Data Base System ,简称 DBS ) :数据库系统是指在计算机系统中 引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工
2、具)、应用系统、 数据库管理员构成。(4)数据库管理系统(DataBase Management System ,简称 DBMS ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。 2、对于DB、DBS、DBMS的关系,下列哪一种描述是正确的(B)A、DB包括DBS、DBMS B、DBS包括DB、DBMSC、DBMS包括DBS、DB D、以上都不对3、概念模型中的术语:实体、属性、码、域、实体型、实体集实体:客观存在并可以相互区分的事物叫实体。属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。码:惟一标识实体的属性集称为码。
3、域:域是一组具有相同数据类型的值的集合。实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。实体集:同型实、体的集合称为实体集。4、目前数据库领域中最常用的逻辑数据模型有 层次模型、网状模型、关系模型 等。5、数据库管理系统的主要功能有哪些?(1)数据库定义功能(2)数据存取功能(3)数据库运行管理(4)数据库的建立和维护功能。6、实体联系图(E R图)实体型:用矩形表示,矩形框内写明实体名; 属性:用椭圆形表示,并用无向边将其与相应的实体连接起来;联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系
4、的类型(1:1或1:n或m:n)。例:假设教学管理规定:一个学生可选修多门课,一门课有若干学生选修;一个教师可讲授多门课,一门课只有一个教师讲授;一个学生选修一门课,仅有一个成绩。学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;解:根据以上规则画出对于的ER图如下7、数据库系统的三级模式结构:外模式:亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局 部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻 辑表示。模式:亦称逻辑
5、模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。内模式:亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。数据库系统在这三级模式之间提供了两层映像:外模式模式映像和模式内模式映像。这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。8、对数据库中进行增加记录类型或增加数据项,通过调整下列哪一级映像,可以使应用程序尽可能保持不变,便达到了哪一种数据的独立性(A)A、外模式模式映像,逻辑数据独立性B、外模式模式映像,物理数据独立性C、模式内
6、模式映像,逻辑数据独立性D、模式内模式映像,物理数据独立性9、数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是(D)A外模式 B内模式 C存储模式 D模式 10、层次模型不能直接表示(C)。A 1 :1关系 B1 :m关系 C m :n关系 D1 :1和1 :m关系 第二章 关系数据库(重点) 本章内容:关系数据结构及形式化定义、关系操作、关系的完整性、关系代数 本章主要考点:概念、关系的完整性、关系代数1、关系数据库管理系统应能实现的专门关系运算包括(B)。A排序、索引、统 B选择、投影、连接 C关联、更新、排序 D显示、打印、制表2、自然连接是构成新关系的有效方法。一般
7、情况下,当对关系R和S使用自然连接时,要求R 和S含有一个或多个共有的(D)。 A元组 B行 C记录 D属性 3、关系运算中花费时间可能最长的运算是(C)。A投影 B选择 C笛卡尔积 D除 4、关系模式的任何属性(A)。A不可再分 B可再分 C命名在该关系模式中可以不惟一 D以上都不是 5、在关系代数运算中,五种基本运算为(C)。A并、差、选择、投影、自然连接 B并、差、交、选择、投影 C并、差、选择、投影、乘积 D并、差、交、选择、乘积 6、要求学生的年龄在15至40岁之间,是关系模型的哪一种完整性规则(C)A参照完整性 B实体完整性 C用户定义的完整性规则 D以上都不是7、关系R的元数为5
8、,关系S的元数是4,则R? S可以等价于下列哪一种(B) 23A?23(RS) B?27(RS) CR? S D?62(RS)8、关系的三类完整性约束:实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值参照完整性规则:若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对 应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为: 或者取空值(F的每个属性值均为空值) 或者等于S中某个元组的主码值用户定义的完整性:针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据 必须满足的语义要求9、关系代数(1)RS仍为n目关系,由属于R或属于S的元
9、组组成(2)R - S 仍为n目关系,由属于R而不属于S的所有元组组成 (3)RS仍为n目关系,由既属于R又属于S的元组组成 (4)笛卡尔积:RS 列:(n+m)列元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组,行:k1k2个元组(5)选择: 选择运算符的含义:在关系R中选择满足给定条件的诸元组 F(R) = t|t?RF(t)= 真 F:选择条件,是一个逻辑表达式例如:查询信息系(IS系)全体学生 Sdept = IS (Student)(6)投影:投影运算符的含义:从R中选择出若干属性列组成新的关系A(R) = tA | t ?R A是R中的属性列例如:查询学生的姓名
10、和所在系,即求Student关系上学生姓名和所在系两个属性上的投影 Sname,Sdept(Student)(7)连接:连接运算的含义:从两个关系的笛卡尔积中选取属性间满足一定条件的元组分为等值连接、一般连接、自然连接例如:关系R和关系S 如下所示:(8)除:给定关系R (X,Y) 和S (Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在 X 属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合,记作: RS = tr X | tr ?RY (S) ? Yx 例如:设
11、关系R、S分别为下图的(a)和(b),RS的结果为图(c)例:设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式: S( SNO,SNAME,STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商号码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目
12、所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。试用关系代数完成如下查询:(1) 求供应工程J1零件的供应商号码SNO;(2) 求供应工程J1零件P1的供应商号码SNO;(3) 求供应工程J1零件为红色的供应商号码SNO;(4) 求没有使用天津供应商生产的红色零件的工程号JNO;(5) 求至少用了供应商S1所供应的全部零件的工程号JNO。解:(1)求供应工程J1零件的供应商号码SNO:Sno(Jno=J1(SPJ))(2)求供应工程J1零件P1的供应商号码S
13、NO:Sno(Jno=J1Pno=P1(SPJ)(3)求供应工程J1零件为红色的供应商号码SNO:Sno(Jno=J1(COLOR=红(P)? SPJ))或Sno(Jno=J1(SPJ)?(COLOR=红(P))(4)求没有使用天津供应商生产的红色零件的工程号JNO:Jno(SPJ)- JNO(city=天津Color=红(S? SPJ? P)或Jno(SPJ)- JNO(city=天津(S)? SPJ ? Color=红(P)(5)求至少用了供应商S1所供应的全部零件的工程号JNO:Jno,Pno(SPJ) Pno(Sno=S1(SPJ)第三章 关系数据库标准语言SQL(重点) 本章内容:S
14、QL概述、数据定义、数据查询、数据更新、视图 本章主要考点:基本概念、数据查询的基本语句操作、数据更新语句 1、SQL语言是(C)语言。 A层次数据库 B网络数据库 C关系数据库 D非数据库 2、SQL语言具有两种使用方式,分别称为交互式SQL和(C)。 A提示式SQL B多用户SQL C嵌入式SQL D解释式SQL 3、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系(D)。 AS BSC,C CS,SC DS,C,SC 4、如
15、下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL操作(B)不能执行。A从职工表中删除行(025,王芳,03,720) B将行(005,乔兴,04,750)插入到职工表中C将职工号为,001的工资改为700 D将职工号为,038的部门号改为03 5、在SQL语言中,用来测试一个集合里是否有重复元组存在,使用下列哪一个关键字(A) AUNIQUE BDISTINCT CEXISTS DNOT IN 6、SQL数据查询语句SELECT语句格式: SELECT ALL|DISTINCT , FROM , WHERE GROUP BY HAVING ORDER BY AS
16、C|DESC ; (注:SQL语句中不区分大小写)单表查询(1)选择表中的若干列:查询指定列:例:查询全体学生的学号与姓名SELECT Sno,SnameFROM Student;? 查询所有列:(将指定为 *) 例:查询全体学生的详细记录。SELECT *FROM Student; 查询结果计算的值: 例:查全体学生的姓名及其出生年份。SELECT Sname,2012-Sage /*假定当年的年份为2012年,减去年龄即得出生年份*/FROM Student;(2)选择表中的若干元组 取消取值重复的行:(指定DISTINCT关键词,去掉表中重复的行) 例:查询选修了课程的学生号码SELEC
17、T DISTINCT Sno (使用DISTINCT关键词取消了重复学号的行) FROM SC; 查询满足条件的行:(WHERE语句) 例:查询计算机科学系全体学生的名单。(比较) SELECT Sname FROM Student WHERE Sdept =CS; 例:查询年龄在2023岁(包括20岁和23岁)之间的学生的姓名、系别和年龄(确定范围) SELECT Sname,Sdept,Sage FROM Student WHERE Sage BETWEEN 20 AND 23; 例:查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别。(确定集合) SELECT Sn
18、ame,Ssex FROM Student WHERE Sdept IN ( IS,MA,CS ); 例:(字符匹配)例:某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。查询缺少成绩的学生的学号和相应的课程号。(空值) SELECT Sno,Cno FROM SC WHERE Grade IS NULL /*不能用=代替IS*/ 例:查询计算机系年龄在20岁以下的学生姓名。(多重条件) SELECT Sname FROM Student WHERE Sdept= CS AND Sage20;(3)ORDER BY子句可以按一个或多个属性列排序。升序:ASC;降序:DESC;缺省
19、值为升序例:查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。 SELECT Sno,Grade FROM SC WHERE Cno= 3 ORDER BY Grade DESC;(4)聚集函数COUNT(DISTINCT|ALL *) 统计元组个数COUNT(DISTINCT|ALL ) 统计一列中值的个数SUM(DISTINCT|ALL ) 计算一列值的总和 AVG(DISTINCT|ALL ) 计算一列值的平均值MAX(DISTINCT|ALL ) 求一列中的最大值MIN(DISTINCT|ALL ) 求一列中的最小值 例:计算1号课程的学生平均成绩。 SELECT AVG
20、(Grade) FROM SC WHERE Cno= 1 ;多表查询(1)等值查询例:查询每个学生及其选修课程的情况 SELECT Student.*,SC.* FROM Student,SC WHERE = ;(2)嵌套查询 带有IN谓词的子查询:例:查询与“刘晨”在同一个系学习的学生SELECT Sno,Sname,Sdept FROM Student WHERE Sdept IN (SELECT Sdept FROM Student WHERE Sname= 刘晨 );带有比较运算符的子查询:(当内查询的结果是一个值时,可以用=代替IN)例:查询与“刘晨”在同一个系学习的学生SELECT
21、 Sno,Sname,Sdept FROM Student WHERE Sdept = (SELECT Sdept FROM Student WHERE Sname= 刘晨 ); 带有ANY或ALL谓词的子查询例:查询其他系中比计算机科学某一学生年龄小的学生姓名和年龄 SELECT Sname,Sage FROM Student WHERE Sage ANY (SELECT Sage FROM Student WHERE Sdept= CS ) AND Sdept CS ; /*这句是父查询块中的条件 */带有EXISTS谓词的子查询:相当于存在量词?,带有EXISTS谓词的子查询不返回任何数
22、据,只产生逻辑真值“true”或逻辑假值“false”。例:查询所有选修了1号课程的学生姓名。SELECT SnameFROM StudentWHERE EXISTS (SELECT * FROM SC WHERE Sno= AND Cno= 1 );(3)集合查询集合操作的种类:并操作UNION,交操作INTERSECT,差操作EXCEPT例:查询计算机科学系的学生及年龄不大于19岁的学生。(并) SELECT * FROM Student WHERE Sdept= CS UNION SELECT * FROM Student WHERE Sage=19;例:查询计算机科学系的学生与年龄不大
23、于19岁的学生(交) SELECT * FROM Student WHERE Sdept=CS INTERSECT SELECT * FROM Student WHERE Sage=19 例:查询计算机科学系的学生与年龄不大于19岁的学生。(差) SELECT * FROM Student WHERE Sdept=CS EXCEPT SELECT * FROM Student WHERE Sage 80(5)SELECT SNAMEFROM SWHERE NOT EXISTS (SELECT * FROM C WHERE NOT EXISTS (SELECT * FROM SC WHERE S
24、#=# AND C#=# ) (6) SELECT SNAME FROM S,SC WHERE #=# GROUP BY SNAME HAVING COUNT(*)3 第四章 数据库安全性 本章内容:计算机安全性概述、数据库安全性控制、审计、数据加密 本章主要考点:基本概念、数据库安全性控制1、下面哪个不是数据库系统必须提供的数据控制功能(B)。A安全性 B可移植性 C完整性 D并发控制 2、数据库的(B)是指数据的正确性和相容性。A安全性 B完整性 C并发控制 D恢复 3、在数据系统中,对存取权限的定义称为(B)。A命令 B授权 C定义 D审计 4、数据库管理系统通常提供授权功能来控制不同用
25、户访问数据的权限,这主要是为了实现数据库的(D)。A可靠性 B一致性 C完整性 D安全性 5、保护数据安全性的一般方法是设置用户标识和存取权限控制。6、安全性控制的一般方法有用户标识鉴定、存取控制、审计、数据加密和视图的保护五级安全措施。 第六章 关系数据理论(重点) 本章内容:规范化、数据依赖的公里系统、模式分解 本章主要考点:函数依赖、多值依赖的概念、范式判定、Armstrong公理系统 1、设计性能较优的关系模式称为规范化,规范化主要的理论依据是(A)。 A关系规范化理论 B关系运算理论 C关系代数理论 D数理逻辑 2、规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及(C)的
26、缺陷。A数据的不一致性 B结构不合理 C冗余度大 D数据丢失 3、当关系模式R(A,B)已属于3NF,下列说法中(B)是正确的。A它一定消除了插入和删除异常 B仍存在一定的插入和删除异常 C一定属于BCNF DA和B都是 4、在关系DB中,任何二元关系模式的最高范式必定是(D)。 A1NF B2NF C3NF DBCNF 5、在关系模式R中,若其函数依赖集中所有候选关键字都是决定因素,则R最高范式是(C)。 A2NF B3NF C4NF DBCNF 6、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门”关系中,因哪个属性而使它不满足第一范式?(B)。 部门(部门号,部门名
27、,部门成员,部门总经理) A部门总经理 B部门成员 C部门名 D部门号 7、函数依赖的概念函数依赖的定义:设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等, 则称 “X函数确定Y” 或 “Y函数依赖于X”,记作XY。即只要 X 上的属性值相等,Y 上的值一定相等。平凡的函数依赖在关系模式R(U)中,对于U的子集X和Y,如果XY,但Y ? X,则称XY是平凡的函数依赖非平凡的函数依赖在关系模式R(U)中,对于U的子集X和Y,若XY,但YX,则称XY是平凡的函数依赖例:在关系SC(Sno, Cno, Grade)中, 非平凡函数依赖: (Sno, Cno) Grade 平凡函数依赖: (Sno, Cno) Sno (Sno, Cno) Cno部分函数依赖:若XY,但Y
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1