一.数据库系统概论
1.1
百度文库 复习文档(需下载券)
《数据库系统概论》(王珊.第五版)
★第一章 绪论
v 本章内容:数据库系统概述、数据模型、数据库系统结构
v 本章主要考点: 数据、数据库、★数据库管理系统的概念、概念模型、★ER图、三种数据模型、数据库的三级模式结构
1、试述数据、数据库、数据库系统、数据库管理系统的概念
(1)数据(Data) :描述事物的符号记录称为数据。
(2)数据库(Data Base ,简称 DB ):数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
(3)数据库系统(Data Base System ,简称 DBS ) :数据库系统是指在计算机系统中 引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、 数据库管理员+用户构成。
(4)数据库管理系统(DataBase Management System,简称 DBMS ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
2、对于DB、DBS、DBMS的关系,下列哪一种描述是正确的(B)
A、DB包括DBS、DBMS B、DBS包括DB、DBMS
C、DBMS包括DBS、DB D、以上都不对
3、概念模型中的术语:实体、属性、码、域、实体型、实体集
实体:客观存在并可以相互区分的事物叫实体。
属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。
码:惟一标识实体的属性集称为码。
域:域是一组具有相同数据类型的值的集合。
实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。
实体集:同型实、体的集合称为实体集。
4、目前数据库领域中最常用的逻辑数据模型有 层次模型、网状模型、关系模型 等。
5、数据库管理系统的主要功能有哪些?(冷叶顷)
(1)数据库定义功能(2)数据存取功能(3)数据库运行管理(4)数据库的建立和维护功能。
★6、实体联系图(E— R图)
实体型:用矩形表示,矩形框内写明实体名;
属性:用椭圆形表示,并用无向边将其与相应的实体连接起来;
联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1或1:n或m:n)。
▲例:假设教学管理规定:
①一个学生可选修多门课,一门课有若干学生选修;
②一个教师可讲授多门课,一门课只有一个教师讲授;
③一个学生选修一门课,仅有一个成绩。
学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;
解:根据以上规则画出对于的E—R图如下
7、数据库系统的三级模式结构:
外模式:亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局 部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻 辑表示。
模式:亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。
内模式:亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
8、对数据库中进行增加记录类型或增加数据项,通过调整下列哪一级映像,可以使应用程序尽可能保持不变,便达到了哪一种数据的独立性(A)
A、外模式/模式映像,逻辑数据独立性
B、外模式/模式映像,物理数据独立性
C、模式/内模式映像,逻辑数据独立性
D、模式/内模式映像,物理数据独立性
9、数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是(D)
A.外模式 B.内模式 C.存储模式 D.模式
10、层次模型不能直接表示(C)。
A. 1 :1关系 B.1 :m关系 C. m :n关系 D.1 :1和1 :m关系
★第二章 关系数据库(重点)
v 本章内容:关系数据结构及形式化定义、关系操作、关系的完整性、关系代数
v 本章主要考点:概念、关系的完整性、★★关系代数
1、关系数据库管理系统应能实现的专门关系运算包括(B)。
A.排序、索引、统 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表
2、自然连接是构成新关系的有效方法。一般情况下,当对关系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,关系S的元数是4,则Rwv S可以等价于下列哪一种(B)
2﹥3
A.s2﹥3(R×S) B.s2﹥7(R×S) C.Rwv S D.s6<2(R×S)
8、关系的三类完整性约束:
实体完整性规则:
若属性A是基本关系R的主属性,则属性A不能取空值
参照完整性规则:
若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对 应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为: ●或者取空值(F的每个属性值均为空值) ●或者等于S中某个元组的主码值
用户定义的完整性:
针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据 必须满足的语义要求
★★9、关系代数(冷叶顷)
(1)R∪S仍为n目关系,由属于R或属于S的元组组成
(2)R - S 仍为n目关系,由属于R而不属于S的所有元组组成
(3)R∩S仍为n目关系,由既属于R又属于S的元组组成
(4)笛卡尔积:
R×S 列:
(n+m)列元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组,行:k1×k2个元组
(5)选择:
选择运算符的含义:
在关系R中选择满足给定条件的诸元组
σF(R) = {t|tÎR∧F(t)= '真'}
F:选择条件,是一个逻辑表达式
例如:查询信息系(IS系)全体学生
σSdept = 'IS' (Student)
(6)投影:
投影运算符的含义:
从R中选择出若干属性列组成新的关系
πA(R) = { t[A] | t ÎR }
A是R中的属性列
例如:查询学生的姓名和所在系,即求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上投影的集合,记作:
R÷S = {tr [X] | tr ÎR∧πY (S) Í Yx }
例如:设关系R、S分别为下图的(a)和(b),R÷S的结果为图(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)、工程项目所在城市(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的供应商号码SNO:
πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ))
(3)求供应工程J1零件为红色的供应商号码SNO:
πSno(σJno=‘J1‘(σCOLOR=’红‘(P)wv SPJ))或
πSno(σJno=‘J1‘(SPJ)wv(σCOLOR=’红‘(P))
(4)求没有使用天津供应商生产的红色零件的工程号JNO:
πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘(Swv SPJwv P))或
πJno(SPJ)- πJNO(σcity=‘天津’(S)wv SPJ wv σColor=‘红‘(P))
(5)求至少用了供应商S1所供应的全部零件的工程号JNO:
πJno,Pno(SPJ)÷ πPno(σSno=‘S1‘(SPJ))
★第三章 关系数据库标准语言SQL(重点)
v 本章内容:SQL概述、数据定义、数据查询、数据更新、视图
v 本章主要考点:基本概念、★★数据查询的基本语句操作、数据更新语句
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)。
A.S B.SC,C C.S,SC D.S,C,SC
4、如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL操作(B)不能执行。
A.从职工表中删除行(‘025’,‘王芳’,‘03’,720)
B.将行(‘005,’,‘乔兴’,‘04’,750)插入到职工表中
C.将职工号为,‘001’的工资改为700
D.将职工号为,’038’的部门号改为‘03’
5、在SQL语言中,用来测试一个集合里是否有重复元组存在,使用下列哪一个关键字(A)
A.UNIQUE B.DISTINCT C.EXISTS D.NOT IN
★★6、SQL数据查询语句(冷叶顷)
SELECT语句格式: SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式>] … FROM <表名或视图名>[, <表名或视图名> ] … [ WHERE <条件表达式> ] [ GROUP BY <列名1> [ HAVING <条件表达式> ] ] [ ORDER BY <列名2> [ ASC|DESC ] ]; (注:SQL语句中不区分大小写)①单表查询
(1)选择表中的若干列:
查询指定列:
例:查询全体学生的学号与姓名
SELECT Sno,SnameFROM Student;
查询所有列:(将<目标列表达式>指定为 *)
例:查询全体学生的详细记录。
SELECT *FROM Student;
查询结果计算的值:
例:查全体学生的姓名及其出生年份。
SELECT Sname,2012-Sage /*假定当年的年份为2012年,减去年龄即得出生年份*/FROM Student;
(2)选择表中的若干元组
取消取值重复的行:(指定DISTINCT关键词,去掉表中重复的行)
例:查询选修了课程的学生号码
SELECT DISTINCT Sno (使用DISTINCT关键词取消了重复学号的行)
FROM SC;
查询满足条件的行:(WHERE语句)
例:查询计算机科学系全体学生的名单。(比较)
SELECT Sname
FROM Student
WHERE Sdept =‘CS’;
例:查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄(确定范围)
SELECT Sname,Sdept,Sage
FROM Student
WHERE Sage BETWEEN 20 AND 23;
例:查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别。(确定集合)
SELECT Sname,Ssex
FROM Student
WHERE Sdept IN ( 'IS','MA','CS' );
例:查询学号为200215121的学生的详细情况。(字符匹配)
SELECT *
FROM Student
WHERE Sno LIKE ‘200215121';
例:某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。查询缺少成绩
的学生的学号和相应的课程号。(空值)
SELECT Sno,Cno
FROM SC
WHERE Grade IS NULL /*不能用’=’代替IS*/
例:查询计算机系年龄在20岁以下的学生姓名。(多重条件)
SELECT Sname
FROM Student
WHERE Sdept= 'CS' AND Sage<20;
(3)ORDER BY子句
可以按一个或多个属性列排序。
升序:ASC;降序:DESC;缺省值为升序
例:查询选修了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(Grade)
FROM SC
WHERE Cno= ' 1 ';
②多表查询
(1)等值查询
例:查询每个学生及其选修课程的情况
SELECT Student.*,SC.*
FROM Student,SC
WHERE Student.Sno = SC.Sno;
(2)嵌套查询
带有IN谓词的子查询:
例:查询与“刘晨”在同一个系学习的学生
SELECT Sno,Sname,Sdept
FROM Student
WHERE Sdept IN
(SELECT Sdept
FROM Student
WHERE Sname=‘ 刘晨 ’);
带有比较运算符的子查询:(当内查询的结果是一个值时,可以用=代替IN)
例:查询与“刘晨”在同一个系学习的学生
SELECT 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谓词的子查询不返回任何数据,只产生逻辑真值“true”或逻辑假值“false”。
例:查询所有选修了1号课程的学生姓名。
SELECT Sname
FROM Student
WHERE EXISTS (SELECT * FROM SC WHERE Sno=Student.Sno AND Cno= ' 1 ');
(3)集合查询(冷叶顷)
集合操作的种类:并操作UNION,交操作INTERSECT,差操作EXCEPT
例:查询计算机科学系的学生及年龄不大于19岁的学生。(并)
SELECT *
FROM Student
WHERE Sdept= 'CS'
UNION
SELECT *
FROM Student
WHERE Sage<=19;
例:查询计算机科学系的学生与年龄不大于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 <=19;
★例题:设学生课程数据库中有三个关系:
学生关系S(S#,SNAME,AGE,SEX)
学习关系SC(S#,C#,GRADE)
课程关系C(C#,CNAME)
其中S#(学号)、C#(课程号)、SNAME(姓名)、AGE(年龄)、SEX(性别)、GRADE(成绩)、CNAME(课程名)
用SQL语句表达下列操作
(1)检索选修课程名称为“MATHS”的学生的学号与姓名
(2)检索至少学习了课程号为“C1”和“C2”的学生的学号
(3)检索年龄在18到20之间(含18和20)的女生的学号、姓名和年龄
(4)检索平均成绩超过80分的学生学号和平均成绩
(5)检索选修了全部课程的学生姓名
(6)检索选修了三门课以上的学生的姓名
解:(1)SELECT SNAME,S#
FROM S,SC,C
WHERE S.S#=SC.S#
AND C.C#=SC.C#
AND CNAME=’ MATHS’
(2)SELECT S#
FROM SC
WHERE CNO=’C1’ AND S# IN( SELECT S#
FROM SC
WHERE CNO=’C2’)
(3)SELECT S#,SNAME,AGE
FROM S
WHERE AGE BETWEEN 18 AND 20
(4)SELECT S# ,AVG(GRADE)
FROM SC
GROUP BY S#
HAVING AVG(GRADE)>80
(5)
SELECT SNAME
FROM S
WHERE NOT EXISTS
(SELECT *
FROM C
WHERE NOT EXISTS
(SELECT *
FROM SC
WHERE S#=S.S# AND C#=C.C# )
)
(6) SELECT SNAME
FROM S,SC
WHERE S.S#=SC.S#
GROUP BY SNAME
HAVING COUNT(*)>3
◎第四章 数据库安全性
v 本章内容:计算机安全性概述、数据库安全性控制、审计、数据加密
v 本章主要考点:基本概念、数据库安全性控制
1、下面哪个不是数据库系统必须提供的数据控制功能(B)。
A.安全性B.可移植性C.完整性D.并发控制
2、数据库的(B)是指数据的正确性和相容性。
A.安全性B.完整性C.并发控制D.恢复
3、在数据系统中,对存取权限的定义称为(B)。
A.命令 B.授权 C.定义 D.审计
4、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的(D)。
A.可靠性B.一致性C.完整性D.安全性
5、保护数据安全性的一般方法是设置用户标识和存取权限控制。
6、安全性控制的一般方法有用户标识鉴定、存取控制、审计、数据加密和视图的保护五级安全措施。
★第六章 关系数据理论(冷叶顷)
v 本章内容:规范化、数据依赖的公里系统、模式分解
v 本章主要考点:函数依赖、多值依赖的概念、★范式判定、Armstrong公理系统
1、设计性能较优的关系模式称为规范化,规范化主要的理论依据是(A)。
A.关系规范化理论 B.关系运算理论 C.关系代数理论 D.数理逻辑
2、规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及(C)的缺陷。
A.数据的不一致性 B.结构不合理 C.冗余度大 D.数据丢失
3、当关系模式R(A,B)已属于3NF,下列说法中(B)是正确的。
A.它一定消除了插入和删除异常 B.仍存在一定的插入和删除异常
C.一定属于BCNF D.A和B都是
4、在关系DB中,任何二元关系模式的最高范式必定是(D)。
A.1NF B.2NF C.3NF D.BCNF
5、在关系模式R中,若其函数依赖集中所有候选关键字都是决定因素,则R最高范式是(C)。
A.2NF B.3NF C.4NF D.BCNF
6、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门”关系中,因哪个属性而使它不满足第一范式?(B)。
部门(部门号,部门名,部门成员,部门总经理)
A.部门总经理 B.部门成员 C.部门名 D.部门号
7、函数依赖的概念
函数依赖的定义:设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等, 则称 “X函数确定Y” 或 “Y函数依赖于X”,记作X→Y。即只要 X 上的属性值相等,Y 上的值一定相等。
●平凡的函数依赖
在关系模式R(U)中,对于U的子集X和Y,
如果X→Y,但Y Í X,则称X→Y是平凡的函数依赖
●非平凡的函数依赖
在关系模式R(U)中,对于U的子集X和Y,
若X→Y,但YX,则称X→Y是平凡的函数依赖
例:
在关系SC(Sno, Cno, Grade)中,
非平凡函数依赖: (Sno, Cno) → Grade
平凡函数依赖: (Sno, Cno) → Sno
(Sno, Cno) → Cno
●部分函数依赖:若X→Y,但Y不完全依赖于X,则称Y对X部分函数依赖。
记作
●完全函数依赖:在R(U)中,如果X→Y,并且对于X的任何一个真子集X’,都有X’Y, 则称Y对X完全函数依赖。记作
例:学校教务的数据库:学生的学号(Sno)、所在系(Sdept)系主任姓名(Mname)、课程号(Cno)成绩(Grade) U ={Sno, Sdept, Mname, Cno, Grade } (Sno,Cno) →Grade是完全函数依赖, (Sno,Cno)→Sdept是部分函数依赖 因为Sno →Sdept成立,且Sno是(Sno,Sanme)的真子集
●传递函数依赖:在R(U)中,如果X→Y,(YX) ,YX, Y→Z,Z不属于Y, 则称Z对X传递函数依赖。
例:在关系Std(Sno, Sdept, Mname)中,
有:
Sno → Sdept,Sdept → Mname
Mname传递函数依赖于Sno
:简单记忆
都是第一范式
第二范式要消去传递
第三范式要求所有的都是码
考到第三范式就不考了
BC范式选择题:。。。都是决定子()
应付考试的话,下面的这个不用看
8、第一范式~BCNF
第一范式(1NF):若关系模式R的每一个分量是不可再分的数据项,则关系模式R属于第一范式。
第二范式(2NF):若关系模式 R∈1NF,且每一个非主属性完全函数依赖于码,则关系模式 R∈2NF 。(即 1NF 消除了非主属性对码的部分函数依赖则成为2NF)。
例:关系模式 S-L-C(Sno, Sdept, Sloc, Cno, Grade)
Sloc为学生住处,假设每个系的学生住在同一个地方
函数依赖包括
(Sno, Cno) Grade
Sno → Sdept
(Sno, Cno) Sdept
Sno → Sloc
(Sno, Cno) Sloc
Sdept → Sloc
由于非主属性Sdept和Sloc并不完全函数依赖于码(Sno, Cno),所以不是2NF解决方法:
S-L-C分解为两个关系模式,以消除这些部分函数依赖,这就属于2NF了
SC(Sno, Cno, Grade)
S-L(Sno, Sdept, Sloc)
第三范式(3NF):关系模式 R 中若不存在这样的码 X、属性组 Y 及非主属性 Z(Z 不是Y的子集)使得 X → Y,YX,Y→Z 成立,则称 R∈3NF
(每一个非主属性既不部分依赖于码有人不传递依赖于码)
例:上例中,在S-L中存在非主属性对码的传递函数依赖,所以不属于3NF
解决方法:采用投影分解法,把S-L分解为两个关系模式,以消除传递函数依赖:S-D(Sno, Sdept)码为Sno D-L(Sdept,Sloc) 码为Sdept
BCNF:关系模式 R∈1NF 。若 X→Y 且 Y 不是 X 的子集时,X必含有码,则
R,F>∈BCNF(即每一个决定属性因素都包含码)
BCNF性质:若R∈BCNF
①所有非主属性对每一个码都是完全函数依赖
②所有的主属性对每一个不包含它的码,也是完全函数依赖
③没有任何属性完全函数依赖于非码的任何一组属性
例:在关系模式STJ(S,T,J)中,S表示学生,T表示教师,J表示课程。
每一教师只教一门课。每门课由若干教师教,某一学生选定某门课,就确定了一个固定的教师。某个学生选修某个教师的课就确定了所选课的名称
函数依赖: (S,J)→T,(S,T)→J,T→J (S,J)和(S,T)都是候选码
STJ∈3NF (S,J)和(S,T)都可以作为候选码,S、T、J都是主属性,没有任何非主属性对码传递依赖或部分依赖。但STJ不是BCNF,因为T是决定因素,T不包含码解决方法:将STJ分解为二个关系模式: ST(S,T) ∈ BCNF, TJ(T,J)∈ BCNF
关于第四范式和多值依赖的内容,大家按书复习
★例题:设有如下关系R
课程名 |
教师名 |
教师地址 |
C1 |
刘爽英 |
D1 |
C2 |
乔志伟 |
D2 |
C3 |
于得水 |
D2 |
C4 |
井超 |
D2 |
(1)它为第几范式? 为什么?
(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的?
(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题?
解: (1)它是2NF。 因为R的候选关键字为“课程名”。依赖关系: 课程名→教师名,教师名 → 课程名,教师名→教师地址,所以课程名→教师地址。即存在非主属性“教师地址”对候选关键字课程名的传递函数,因此R不是3NF。但:因为不存在非主属性对候选关键字的部分函数依赖,所以R是2NF。
(2)存在。当删除某门课程时,会删除不该删除的教师的有关信息。
(3)分解为高一级范式如图所示。
R1(课程名,教师名) R2(教师名,教师地址)
课程号 |
教师名 |
C1 |
刘爽英 |
C2 |
乔志伟 |
C3 |
于得水 |
C4 |
井超 |
R1
教师名 |
教师地址 |
刘爽英 |
D1 |
乔志伟 |
D2 |
于得水 |
D2 |
井超 |
D2 |
R2
分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不
会丢失教师方面的信息。
★第七章 数据库设计(冷叶顷)
v 本章内容:数据库设计概述、数据库设计的6个步骤
v 本章主要考点:★数据库设计的6个步骤 、ER图合并出现的冲突与解决方法、★ER图
转换成关系模式
★1、简述数据库设计的主要步骤。
(1)需求分析(2)概念结构设计(3)逻辑结构设计(4)数据库物理设计
(5)数据库实施(6)数据库运行和维护。
2、ER图合并汇总会出现什么冲突?怎么解决冲突?
①出现的冲突有:属性冲突、命名冲突、结构冲突
②属性冲突和命名冲突通常用讨论、协商等行政手段解决。结构冲突通常根据应用语义对实体联系的类型进行综合或调整。
3、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的(B)阶段。
A.需求分析 B.概念设计 C.逻辑设计 D.物理设计
4、在关系数据库设计中,设计关系模式是(C)的任务。
A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段
5、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是(B)。
A.建立库结构B.扩充功能 C.加载数据 D.系统调试
6、从E-R模型关系向关系模型转换时,一个M∶N联系转换为关系模型时,该关系模式的关键字是(C)。
A.M端实体的关键字 B.N端实体的关键字
C.M端实体关键字与N端实体关键字组合D.重新选取其他属性
7、当局部E-R图合并成全局E-R图时可能出现冲突,不属于合并冲突的是(B)。
A.属性冲突 B.语法冲突 C.结构冲突 D.命名冲突
8、数据流程图(DFD)是用于描述结构化方法中(C)阶段的工具。
A.可行性分析B.详细设计C.需求分析D.程序编码
★9、设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期。试画出E-R图,并注明属性和联系,并将其转换为关系模型。
解:E-R图
关系模型:顾客(顾客编号,姓名,地址,年龄,性别)
商店(商店编号,商店名,地址,电话)
购物(顾客编号,商店名称,日期,消费金额)
◎第十章 数据库恢复技术(冷叶顷)
v 本章内容:事务的基本概念、故障的种类、恢复策略
v 本章主要考点:基本概念、恢复策略
1、(C)是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
A.程序 B.命令 C.事务 D.文件
2、事务的原子性是指(A)。
A.事务中包括的所有操作要么都做,要么都不做
B.事务一旦提交,对数据库的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的
D.事务必须是使数据库从一个一致性状态变到另一个一致性状态
3、若数据库中只包含成功事务提交的结果,则此数据库就称为处于(B)状态。
A.安全 B.一致 C.不安全 D.不一致
4、若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为(B)。
A.事务故障B.系统故障C.介质故障D.运行故障
5、(B)用来记录对数据库中数据进行的每一次更新操作。
A.后援副本B.日志文件C.数据库D.缓冲区
6、用于数据库恢复的重要文件是(C)。
A.数据库文件B.索引文件C.日志文件D.备注文件
7、数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括(C)。
A.数据字典、应用程序、审计档案、数据库后备副本
B.数据字典、应用程序、日志文件、审计档案
C.日志文件、数据库后备副本 D.数据字典、应用程序、数据库后备副本
8、事务的特性为原子性、隔离性、一致性、持续性。
9、数据库系统中的故障包括事务内部的故障、系统故障、介质故障、计算机病毒。
◎第十一章 并发控制
v 本章内容:并发控制的概述、封锁、活锁和死锁、两段锁协议
v 本章主要考点:封锁中读锁和写锁的概念、活锁和死锁的概念、两段锁协议
T1 |
T2 |
①读A=10 ② ③A=A-5写回 ④ |
读A=10
A=A-8写回 |
1、设有两个事务T1、T2,其并发操作如右图所示,下面评价正确的是(B)。
A.该操作不存在问题B.该操作丢失修改
C.该操作不能重复读 D.该操作读“脏”数据
2、解决并发操作带来的数据不一致性总是普遍采用(A)。
A.封锁B.恢复C.存取控制D.协商
3、若事务T对数据R已经加X锁,则其他事务对数据R(D)。
A.可以加S锁不能加X锁B.不能加S锁可以加X锁
C.可以加S锁也可以加X锁D.不能加任何锁
4、并发操作会带来哪些数据不一致性(D)。
A.丢失修改、不可重复读、脏读、死锁 B.不可重复读、脏读、死锁
C.丢失修改、脏读、死锁 D.丢失修改、不可重复读、脏读
5、什么是封锁?
封锁就是事务T在对某个数据对象操作之前,先向系统发出请求,对其加锁6、什么是活锁?什么是死锁?
活锁:事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍然等待。T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4的请求……T2有可能永远等待,这就是活锁的情形。避免方法:采用先来先服务的策略。
死锁:事务T1封锁了数据R1,T2封锁了数据R2,T1又请求封锁R2,因T2已封锁了R2,于是T1等待T2释放R2上的锁,接着T2又申请封锁R1,因T1已封锁了R1,T2也只能等待T1释放R1上的锁,这样T1在等待T2,而T2又在等待T1,T1和T2两个事务永远不能结束,形成死锁。
7、预防死锁的方法有一次性封锁法、顺序封锁法。
8、死锁的诊断与解除方法有超时法、等待图法。
9、试述两段锁协议的概念
所谓两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁。
获得封锁:在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁释放封锁:在释放一个封锁之后,事务不再申请和获得任何其他封锁若并发事务都遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的若并发事务的一个调度是可串行化的,不一定所有事务都符合两段锁协议
1.2
个人整理
二.数据库原理及应用样题
数据库原理及应用历年考题
《数据库原理及应用》试题1
一、选择题
1、数据库系统的基本特征是_________。
A、数据的统一控制 B、数据共享性和统一控制
C、数据共享性、独立性和冗余度小 D、数据共享性和数据独立性
(难度系数C)正确答案:C
2、DB、DBMS和DBS三者之间的关系是_________。
A、DBS与DB和DBMS无关 B、DBMS包括DBS和DB
C、DB包括DBMS和DBS D、DBS包括DB和DBMS
(难度系数B)正确答案:D
3、设有关系R和S,关系代数 表示的是_________。
A、R∩S B、R―S
C、R÷S D、R∪S
(难度系数B)正确答案:A
4、自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用
自然连接时,要求R和S含有一个或多个共有的__________。
A、行 B、属性 C、记录 D、元组
(难度系数C)正确答案:B
5、以下是信息世界的模型,且实际上是现实世界到机器世界的一个中间层次的是_________。
A、数据模型 B、概念模型
C、关系模型 D、E-R图
(难度系数C)正确答案:C
6、构成E—R模型的三个基本要素是_________。
A、实体、属性值、关系; B、实体、属性、联系;
C、实体、实体集、联系; D、实体、实体集、属性;
(难度系数C)正确答案:B
7、在关系代数运算中,五种基本运算为_________。
A、并、差、选择、投影、连接
B、并、交、选择、投影、笛卡尔积
C、并、差、选择、投影、笛卡尔积
D、并、除、投影、笛卡尔积、选择
(难度系数B)正确答案:C
8、在下列关于规范化理论的叙述中,不正确的是_________。
A、任何一个关系模式一定有键。
B、任何一个包含两个属性的关系模式一定满足3NF。
C、任何一个包含两个属性的关系模式一定满足BCNF。
D、任何一个包含三个属性的关系模式一定满足2NF。
(难度系数B)正确答案:D
9、设有关系模式R(A,B,C)和S(C,D)。与SQL语句“SELECT A,B,D FROM R,S WHERE R.C=S.C”等价的关系代数表达式为_________。
A、 B、
C、 D、
(难度系数A)正确答案:A
10、SQL的视图是从_________中导出的。
A、基本表 B、视图
C、数据库 D、基本表或视图
(难度系数C)正确答案:D
11、用如下的SQL语句创建一个Teacher表
CREATE TABLE Teacher ( TNO Char(6) NOT NULL,
NAME Char(8) NOT NULL,
SEX Char(2), SAL INT,
SDETP char(12) check (SDEPT IN(‘IS’,’MA’,’CS’)))
可以插入到Teacher表中的元组是_________。
A、(‘T0203’,‘刘刚’,NULL,NULL,‘IS’)
B、( NULL, ‘王芳’,‘女’,‘1200’,‘CS’)
C、(‘T0111’,NULL,‘男’,23,‘MA’)
D、(‘T0101’,‘李华’,男,2100,‘EN’)
(难度系数A)正确答案:A
12、SQL语言中,条件年龄 BETWEEN 18 AND 30表示年龄在18至30之间,且_________。
A、包括30岁但不包括18岁 B、包括18岁和30岁
C、包括18岁但不包括30岁 D、不包括18岁和30岁
(难度系数B)正确答案:B
13、允许取空值但不允许出现重复值的约束是_________。
A、NULL B、PRIMARY KEY
C、UNIQUE D、FOREIGN KEY
(难度系数B)正确答案:C
14、数据库的完整性是指数据的________和________。
(1)正确性 (2)合法性 (3)不被非法存取 (4)相容性 (5)不被恶意破坏
A、(1)和(3) B、(2)和(5)
C、(2)和(4) D、(1)和(4)
(难度系数A)正确答案:D
15、SQL的GRANT和REVOKE语句主要用来维护数据库的_________。
A、安全性 B、完整性
C、可靠性 D、一致性
(难度系数B)正确答案:A
16、在数据库设计中数据流图(DFD)和数据字典(DD)主要用来描述结构化方法中的_________阶段的工具。
A、逻辑结构设计 B、概念结构设计
C、可行性分析 D、需求分析
(难度系数C)正确答案:D
17、从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的码是_________。
A、M端实体的码 B、N端实体的码
C、M端实体码与N端实体码组合 D、重新选取其他属性
(难度系数B)正确答案:C
18、SQL的集合处理方式与宿主语言单记录的处理方式之间用_______来协调。
A、SQLCA B、游标
C、存储过程 D、触发器
(难度系数B)正确答案:B
19、当将局部E-R图集成为全局E-R图时,如果同一对象在一个局部E-R图中作为实体,而在另一个局部E-R图中作为属性,这种现象称为_________。
A、结构冲突 B、命名冲突 C、属性冲突 D、语义冲突
(难度系数A)正确答案:A
20、下面关于关系数据库范式的描述中,错误的是_________。
A) 关系满足的范式越低,则更新操作的代价就越高
B) 关系满足的范式越高,则更新操作的代价就越低
C) 关系满足的范式越高,则查询操作的代价就越高
D) 关系满足的范式越低,则查询操作的代价就越高
(难度系数A)正确答案:D
二、填空(每空1分,共20分)
1.关系模型和网状模型的数据结构分别是_____________和_____________。
(难度系数B)正确答案:二维表 有向图
2.数据模型是由______________、____________、和____________三部分组成的。
(难度系数C)正确答案:数据结构 数据操作 完整性约束
3.关系数据语言可以分为三类:_____________、_____________和关系演算语言。
(难度系数C)正确答案:SQL语言 关系代数语言
4.删除基本表用______________语句,删除基本表的元组用_____________语句
(难度系数B)正确答案:ALTER UPDATE
5.规范化数据库设计分为以下六个设计阶段:需求分析阶段、_____________、_____________、___________、数据库实施阶段、数据库运行和维护阶段。
(难度系数B)正确答案:概念结构设计 逻辑结构设计 物理结构设计阶段
6.事务的特性有:_____________、原子性、_____________和持久性。
(难度系数C)正确答案:一致性 隔离性
7. 当对视图进行 UPDATE、INSERT和DELETE 操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项________________________________。
(难度系数A)正确答案:WITH CHECK OPTION
8. SQL中,表有三种: ____________、临时表(虚表)和____________。
(难度系数B)正确答案:视图、基本表
9. 在关系数据库规范化理论的研究中,在函数依赖的范畴内,___________范式达到了最高的规范化程度。
(难度系数B)正确答案:BC范式
10.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的函数依赖和________________________。
(难度系数A)正确答案:无损连接
11.如果一个关系模式R是1NF,并且关系的每个决定因子都是候选码,那么R至少应该是_____________________范式。
(难度系数A)正确答案:BC范式
三、简答题:(共15分)
1、数据库系统中有哪三层模式结构?采用三层模式结构有什么好处?(5分)
(难度系数B)正确答案:
答:数据库系统三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。 (1分)
数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映象:
外模式/模式映象, 模式/内模式映象 (3分)
正是这两层映象保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 (1分)
2、什么是数据库的安全性?DBMS有哪些安全性措施?正确答案:
答:数据库的安全性是保护数据库以防止不合法使用所造成的数据泄露、更改或破坏。(2分)
DBMS主要通过以下方法来保护数据库的安全的:通过定义用户标识对用户身份进行鉴定,只允许合法的用户才能进入系统;通过定义用户的访问权限,对于合法的用户只能访问它有权访问的数据;通过定义视图,屏蔽掉用户不能访问的数据;通过对数据加密以及通过审计的功能等方法来保护数据库中的安全性的.(3分)
3、在数据库设计过程中将E-R模型转换为关系数据模型的转换原则是什么?(5分) (难度系数B)正确答案:
答:E-R图中的每个实体,对应一个关系,该关系具有属性为实体的全部属性,关键字为实体的关键字。E-R图中的一个联系对应一个关系,该关系具有属性为联系的属性以及该联系相关的实体的关键字。考虑到数据库优化,根据联系类型不同在转换为关系模式时具体处理不同: (2分)
(1)联系类型为1:1时,-先将两个实体分别转换两个关系模式,然后在任意一个关系模式中加入另一个关系模式的键和联系类型的属性。 (1分)
(2)1:N-先将两个实体分别转换为两个关系模式,然后在N端实体转换的关系模式中加入1端实体转换的关系模式的键和联系类型的属性。 (1分)
(3)M:N-先将两个实体分别转换为两个关系模式,然后将联系类型转换为第三个关系模式,其属性由两端实体的键和联系类型的属性构成。 (1分)
四、T-SQL综合题(共35分)
1、有学生-课程关系数据库,各关系表描述如下:
Student
列名 |
说明 |
数据类型 |
约束 |
Sno |
学号 |
字符(8) |
主键 |
Sname |
姓名 |
字符(12) |
非空,唯一 |
Ssex |
性别 |
字符(2) |
取‘男’或‘女’, 默认值 ‘男’ |
Sage |
年龄 |
整型 |
取值15~36,默认值22 |
Sdept |
院系 |
字符(20) |
默认 ‘计算机系’ |
Course
列名 |
说明 |
数据类型 |
约束 |
Cno |
课程号 |
字符(8) |
主键 |
Cname |
课程名 |
字符(8) |
非空 |
Teacher |
教师名 |
字符(10) |
唯一 |
SC
列名 |
说明 |
数据类型 |
约束 |
Sno |
学号 |
字符(8) |
主键,参照Student表,级联更新和删除
|
Cno |
课程号 |
字符(8) |
主键,参照Course表,级联更新,拒绝删除 |
Grade |
成绩 |
短整型 |
取值0~100 |
(1)用关系代数表达式表示下列问题
1)检索选修了课程号为C5的学生学号、年龄和院系; (2分)
(难度系数B)正确答案:
∏学号, 年龄,院系(Student(s课程号=‘C5’ (SC) ) )
或 ∏学号, 年龄,院系( s课程号=‘C5’( SC Student))
2)检索选修了教师‘李华’所授课程的学生姓名和学号 ; (3分)
(难度系数B)正确答案:
∏姓名, 学号(Student (SC (s授课教师=‘李华’ (Course) ) ) )
或 ∏姓名, 学号( s授课教师=‘李华’( Student SC Course))
(2)用SQL语句实现下列问题
1)写出创建Student表的T-SQL语句 ; (5分)
(难度系数A)正确答案:
CREATE TABLE Student
( Sno CHAR(8) PRIMARY KEY,
Sname CHAR(12) NOT NULL UNIQUE
,
Ssex CHAR(2) CHECK(Ssex in('男','女')) DEFAULT '男',
Sage INT CHECK(Sage>=15 AND Sage<=36) DEFAULT 22,
Sdept CHAR(20) DEFAULT ‘计算机系’
);
2)检索课程名以"DB_"开头,且倒数第3个字符为 k的课程的详细情况;
(4分)
(难度系数A)正确答案:
SELECT *
FROM Course
WHERE Cname LIKE 'DB\_%k_ _ _' ESCAPE ' \ ';
3)向学生选修课程表中插入元组“学生S10选修课程号C4”。 (2分)
(难度系数C)正确答案:
INSERT
INTO SC (Sno, Cno)
VALUES( ‘S10’,’ C4’ )
4) 删除选课成绩在55分以下的学生记录; (4分)
(难度系数A)正确答案:
DELETE
FROM Student
WHERE SNO IN
(SELECT SNO
FROM SC
WHERE GRADE<55);
或
DELETE
FROM Student
WHERE Student.SNO = SC.SNO AND SC.GRADE<55 ;
5) 把“高等数学”课程成绩提高8%; (3分)
(难度系数B)正确答案:
UPDATE SC
SET Grade=Grade*1.08
WHERE Cno IN
(SELECT Cno
FROM Course
WHERE Cname=‘高等数学’);
6)求出女同学的每一年龄组(超过3人)有多少人?要求查询结果按人数降序排列,人数相同的按年龄升序排列; (5分)
(难度系数A)正确答案:
SELECT Sage, COUNT(Sno)
FROM Student
WHERE Ssex=‘女’
GROUP BY Sage HAVING COUNT(Sno)>3
ORDER BY 2 DESC, Sage ASC //其中ASC也可以省略不写
7)定义视图S_age,其中包括学生学号以及每个学生选修课程的门数(要求成绩非空)和平均成绩; (5分)
(难度系数A)正确答案:
CREATE VIEW S_age (Sno, Cno_num, Avg_grade)
AS SELECT Sno,COUNT(Cno),AVG(grade)
FROM SC
WHERE grade IS NOT NULL
GROUP BY Sno10、alter table student
add
jiguan char(20),
8)在Course表中增加一个类型为char(10)的职称(pro)列; (2分)
(难度系数C)正确答案:
alter table Course
add pro char(10)
五、综合应用题(共10分)
假设某商业集团数据库有一关系模式R如下:(10分)
R(商店编号,商品编号,数量,部门编号,负责人)
现规定:(1)每个商店的每种商品只在一个部门销售。
(2)每个商店的每个部门只有一个负责人。
(3)每个商店的每种商品只有一个库存数量。
回答下列问题:
①写出R中的存在的基本函数依赖(3分)
②找出关系模式R的候选键(3分)
③关系模式R最高能不能达到第3范式,若不能如何分解? (4分)
①(难度系数B)正确答案:
(商店编号,商品编号)®部门编号 (1分)
(商店编号,部门编)®号负责人 (1分)
(商店编号,商品编号)®数量 (1分)
②(难度系数A)正确答案:
L类属性:商店编号,商品编号;
LR属性类:部门编号;
R属性类:负责人,数量。 (1分)
因为:(商店编号,商品编号)+=U (1分)
所以:关系模式R的候选键为: (商店编号,商品编号) (1分)
③判断R属于第几范式:
(难度系数B)正确答案:
非主属性为:部门编号,负责人,数量。
它们对候选键都是完全函数依赖关系,所以R属于2NF。 (2分)
但是:
(商店编号,商品编号)→(部门编号,商店编号)
(商店编号,部门编号)→(负责人)
所以非主属性负责人对候选键传递依赖,那么R不满足第三范式,因此R最高满足第二范式。(2分)
《数据库原理及应用》试题2
一、选择题(每题1分,共20分)
1、在数据库中存储的是_________。
A、数据 B、数据模型
C、信息 D、数据以及数据之间的联系
(难度系数C)正确答案:D
2、DB、DBMS和DBS三者之间的关系是_________。
A、DBS与DB和DBMS无关 B、DB包括DBMS和DBS
C、DBS包括DB和DBMS D、DBMS包括DBS和DB
(难度系数B)正确答案:C
3、在数据库中,产生数据不一致的根本原因是____。
A.数据存储量太大; B.没有严格保护数据
C.未对数据进行完整性控制 D.数据冗余
(难度系数B)正确答案:D
4、自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用
自然连接时,要求R和S含有一个或多个共有的__________。
A、属性 B、行 C、记录 D、元组
(难度系数A)正确答案:A
5、以下是信息世界的模型,且实际上是现实世界到机器世界的一个中间层次的是_________。
A、数据模型 B、E-R图
C、关系模型 D、概念模型
(难度系数C)正确答案:D
6、构成E—R模型的三个基本要素是_________。
A、实体、属性、联系; B、实体、属性值、关系;
C、实体、实体集、联系; D、实体、实体集、属性;
(难度系数B)正确答案:A
7、SQL语言中的“视图(VIEW)”对应于数据库系统三级模式结构中的_________。
A、内模式 B、外模式
C、 模式 D、都不对应
(难度系数B)正确答案:B
8、SQL的GRANT和REVOKE语句主要用来维护数据库的_________。
A、可靠性 B、完整性
C、安全性 D、一致性
(难度系数C)正确答案:C
9、在下列关于函数依赖的叙述中,不正确的是_______。
A、 B、。
C、 D、
(难度系数A)正确答案:D
10、设有关系模式R(A,B,C)和S(C,D)。与SQL语句“SELECT A,B,D FROM R,S WHERE R.C=S.C”等价的关系代数表达式为_________。
A、 B、
C、 D、
(难度系数A)正确答案:A
11、在数据库设计中数据流图(DFD)和数据字典(DD)主要用来描述结构化方法中的_________阶段的工具。
A、概念结构设计 B、需求分析
C、可行性分析 D、逻辑结构设计
(难度系数C)正确答案:B
12、从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的码是_________。
A、M端实体的码 B、N端实体的码
C、M端实体码与N端实体码组合 D、重新选取其他属性
(难度系数B)正确答案:C
13、用如下的SQL语句创建一个Teacher表
CREATE TABLE Teacher ( TNO Char(6) NOT NULL,
NAME Char(8) NOT NULL,
SEX Char(2),
SAL INT,
SDETP char(12) check (SDEPT IN(‘IS’,’MA’,’CS’)))
可以插入到Teacher表中的元组是_________。
A、(‘101’,‘李梅’,女,100,‘EN’)
B、( NULL, ‘李红’,‘女’,‘200’,‘CS’)
C、(‘111’,NULL,‘女’,23,‘MA’)
D、(‘203’,‘刘刚’,NULL,NULL,‘IS’)
(难度系数A)正确答案:D
14、SQL的集合处理方式与宿主语言单记录的处理方式之间用_________来协调。
A、游标 B、SQLCA
C、存储过程 D、触发器
(难度系数B)正确答案:A
15、关于BC范式下列说法正确的是_________。
A、如果R∈3NF ,则R一定是BCNF
B、若R∈3NF,且不存在主属性对非码的函数依赖,则其是BCNF
C、如果R∈BCNF,则R∈3NF
D、以上说法都不对
(难度系数B)正确答案:B
16、下面有关各种范式之间的包含关系的描述中,正确的是_____________。
A、BCNF4NF3NF2NF1NF
B、1NF2NF3NF4NFBCNF
C、4NFBCNF3NF2NF1NF
D、1NF2NF3NFBCNF4NF
(难度系数B)正确答案:C
17、数据库的_________是指数据的正确性和相容性。
A、恢复 B、安全性 C、并发控制 D、完整性
(难度系数C)正确答案:D
18、一个事务执行过程中,其正在访问的数据被其他事务所修改,导致处理结果不正确,这是由于违背了事务的何种特性而引起的
A、隔离性 B、 一致性 C、原子性 D、 持久性
(难度系数A)正确答案:A
19、当对视图进行 UPDATE 、 INSERT 和 DELETE 操作时,为了保证被操作的元组满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项_________。
A、With Revoke Option B、With Check Option
C、With Role Option D、With Grant Option
(难度系数B)正确答案:B
20、当将局部E-R图集成为全局E-R图时,如果同一对象在一个局部E-R图中作为实体,而在另一个局部E-R图中作为属性,这种现象称为_________。
A、属性冲突 B、命名冲突 C、结构冲突 D、语义冲突
(难度系数B)正确答案:C
二、填空(每空1分,共20分)
1.关系模型和层次的数据结构分别是_____________和_____________。
(难度系数C)正确答案:二维表 有向树
2.数据模型是由_____________、_____________、和___________三部分组成的。
(难度系数C)正确答案:数据结构 数据操作 完整性约束
3.关系数据语言可以分为三类:___________、___________和关系代数语言。
(难度系数C)正确答案:SQL语言 关系演算语言
4.基本表结构修改用_____________语句,基本表内容修改用___________语句
(难度系数C)正确答案: ALTER UPDATE
5.规范化数据库设计分为以下六个设计阶段:需求分析阶段、_____________、_____________、___________、数据库实施阶段、数据库运行和维护阶段。
(难度系数C)正确答案:概念结构设计、逻辑结构设计、物理结构设计阶段
6. 关系代数是一种关系操纵语言,它的操作对象和操作结果均为_________。
(难度系数C)正确答案:关系
7. 如果一个关系模式R是1NF,并且关系的每个决定因子都是候选码,那么R至少应该是_____________范式。
(难度系数C)正确答案:BC范式
8. SQL中,表有三种: ____________、临时表(虚表)和____________。
(难度系数C)正确答案:视图、基本表
9. 数据库中术语英文缩写有“RDBMS”和DML等,其中文的意思分别为_______________和_______________。
(难度系数C)正确答案:关系数据库管理系统 数据操纵语言
10.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的函数依赖和________________________
(难度系数C)正确答案:无损连接
11.在 SQL 语言中,如果要为一个基本表增加列和完整性约束条件,应该使用 SQL 语句 __________________________。
(难度系数C)正确答案:ALTER TABLE
三、简答题:(本题15分)
1、数据库管理系统的主要功能? (5分)
(难度系数B)正确答案:
答:数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它主要功能包括以下几个方面: (2分)
数据定义功能 DBMS提供数据描述语言(DDL),用户可通过它来定义数据。
数据操纵功能 DBMS还提供数据操纵语言(DML),实现对数据库的基本操作:查询、插入、删除和修改。 (1分)
数据库的运行管理 这是DBMS运行时的核心部分,它包括开发控制,安全性检查,完整性约束条件的检查和执行,数据库的内容维护等。 (1分)
数据库的建立和维护功能 它包括数据库初始数据的输入及转换,数据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等。 (1分)
2、DBA的职责是什么? (5分)
(难度系数C)正确答案:
(1)参与数据库设计,决定数据库的结构和内容; (1分)
(2)定义数据的安全性、完整性,负责分配用户对数据库的使用权限和口令管理(3分)
(3)监督控制数据库的使用和运行,改进或重新构造数据库系统; (1分)
(4)帮助终端用户使用数据库。
3、在数据库设计过程中将E-R模型转换为关系数据模型的转换原则? (5分)
(难度系数A)正确答案:
答:E-R图中的每个实体,对应一个关系,该关系具有属性为实体的全部属性,关键字为实体的关键字。E-R图中的一个联系对应一个关系,该关系具有属性为联系的属性以及该联系相关的实体的关键字。考虑到数据库优化,根据联系类型不同在转换为关系模式时具体处理不同: (2分)
(1)联系类型为1:1时,-先将两个实体分别转换两个关系模式,然后在任意一个关系模式中加入另一个关系模式的键和联系类型的属性。 (1分)
(2)1:N-先将两个实体分别转换为两个关系模式,然后在N端实体转换的关系模式中加入1端实体转换的关系模式的键和联系类型的属性。 (1分)
(3)M:N-先将两个实体分别转换为两个关系模式,然后将联系类型转换为第三个关系模式,其属性由两端实体的键和联系类型的属性构成。 (1分)
四、T-SQL综合题(共35分)
1、有学生-课程关系数据库,各关系表描述如下:
student
列名 |
说明 |
数据类型 |
约束 |
Sno |
学号 |
字符(8) |
主键 |
Sname |
姓名 |
字符(12) |
非空,唯一 |
Ssex |
性别 |
字符(2) |
取‘男’或‘女’, 默认值 ‘女’ |
Sage |
年龄 |
整型 |
取值16~40,默认值21 |
Sdept |
院系 |
字符(20) |
默认 ‘电子系’ |
列名 |
说明 |
数据类型 |
约束 |
Cno |
课程号 |
字符(8) |
主键 |
Cname |
课程名 |
字符(8) |
非空 |
Teacher |
教师名 |
字符(10) |
唯一 |
Course
SC
列名 |
说明 |
数据类型 |
约束 |
Sno |
学号 |
字符(8) |
主键,参照Student表,级联更新和删除
|
Cno |
课程号 |
字符(8) |
主键,参照Course表,级联更新,拒绝删除 |
Grade |
成绩 |
短整型 |
取值0~100 |
(1)用关系代数表达式表示下列问题
1)检索选修了教师‘王敏’所授课程的学生姓名和学号 ; (2分)
(难度系数B)正确答案:
∏姓名, 学号(Student (SC (s授课教师=‘王敏’ (Course) ) ) )
或 ∏姓名, 学号( s授课教师=‘王敏’( Student SC Course))
2)检索选修了课程号为C3或者C5的学生学号和成绩 ; (3分)
(难度系数B)正确答案:
∏学号,成绩( s课程号=‘C3’( SC)∪∏学号( s课程号=‘C5’( SC)
(2)用SQL语句实现下列问题
1)写出创建S表的T-SQL语句 ; (5分)
(难度系数A)正确答案:
CREATE TABLE S
( Sno CHAR(8) PRIMARY KEY,
Sname CHAR(12) NOT NULL UNIQUE
,
Ssex CHAR(2) CHECK(Ssex in('男','女')) DEFAULT '女',
Sage INT CHECK(STage>=16 AND STage<=40) DEFAULT 21,
Sdept CHAR(20) DEFAULT ‘电子系’
);
2) 检索姓"李"且倒数第2个字为"华"或"涛"字的学生的姓名和学号;
(4分)
(难度系数A)正确答案:
SELECT Sname,Sno
FROM Student
WHERE Sname LIKE '李% [华涛] _ _';
3)向学生选修课程表中插入元组“学生S6选修课程号C2”。 (2分)
(难度系数B)正确答案:
INSERT
INTO SC (Sno, Cno)
VALUES( ‘S6’,’ C2’ )
4) 删除选课成绩在60分以下的学生记录; (4分)
(难度系数A)正确答案:
DELETE
FROM Student
WHERE SNO IN
(SELECT SNO
FROM SC
WHERE GRADE<60);
或
DELETE
FROM Student
WHERE Student.SNO = SC.SNO AND SC.GRADE<60 ;
5) 把“大学英语”课程成绩提高5%; (3分)
(难度系数B)正确答案:
UPDATE SC
SET Grade=Grade*1.05
WHERE Cno IN
(SELECT Cno
FROM Course
WHERE Cname=‘大学英语’)
6)求出男同学的每一年龄组(超过4人)有多少人?要求查询结果按人数降序排列,人数相同的按年龄升序排列; (5分)
(难度系数A)正确答案:
SELECT Sage, COUNT(Sno)
FROM Student
WHERE Ssex=‘男’
GROUP BY Sage HAVING COUNT(Sno)>4
ORDER BY 2 DESC, Sage ASC //其中ASC也可以省略不写
7)定义视图S_age,其中包括学生学号以及每个学生选修课程的门数(要求成绩非空)和平均成绩; (5分)
(难度系数A)正确答案:
CREATE VIEW S_age (Sno, Cno_num, Avg_grade)
AS SELECT Sno,COUNT(Cno),AVG(grade)
FROM SC
WHERE grade IS NOT NULL
GROUP BY Sno10、alter table student
add
jiguan char(20),
8)在S表中删除院系字段列。 (2分)
(难度系数C)正确答案:
alter table student
drop column Sdept
五、综合应用题(共10分)
现有如下关系模式:
借阅(图书编号,书名,作者名,出版社,读者编号,读者姓名,借阅日期,归还日期)。其中规定:图书编号唯一;读者编号唯一;读者在归还某一本书后还可以其他时间再次借阅。回答下列问题
①写出该关系模式中存在的函数依赖 (2分)
(难度系数C)正确答案
图书编号→(书名,作者名,出版社)
读者编号→(读者姓名,借阅日期,归还日期)
②求出该关系模式的候选键 (4分)
(难度系数C)正确答案
L类属性:图书编号,读者编号; (1分)
因为:(图书编号,读者编号)+=U (2分)
所以:关系模式R的候选键为: (图书编号,读者编号) (4分)
③该关系模式最高满足第几范式?为什么? (4分)
(难度系数C)正确答案
非主属性为:书名,作者名,出版社,部分函数依赖主码图书编号
非主属性为:读者姓名,借阅日期,归还日期,部分函数依赖主码读者编号
它们对候选键都是完全函数依赖关系,所以R属于2NF。 (2分)
《数据库原理及应用》试题3
一、选择题(每题1分,共20分)
1、数据库系统的特点是_________、数据独立、减少数据冗余、避免数据不一致和加强了数据保护。
A、数据共享 B、数据存储
C、数据应用 D、数据保密
(难度系数C)正确答案:A
2、在数据库中存储的是_________。
A、数据 B、数据模型
C、信息 D、数据以及数据之间的联系
(难度系数C)正确答案:D
3、数据库系统的数据独立性是指_________。
A、不会因为数据的变化而影响应用程序
B、不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
C、不会因为存储策略的变化而影响存储结构
D、不会因为某些存储结构的变化而影响其他的存储结构
(难度系数C)正确答案:B
4、DB、DBMS和DBS三者之间的关系是_________。
A、DBS与DB和DBMS无关 B、DBMS包括DBS和DB
C、DBS包括DB和DBMS D、DB包括DBMS和DBS
(难度系数B)正确答案:C
5、数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作.这种功能称为_________。
A、数据操纵功能 B、数据管理功能
C、数据定义功能 D、数据控制功能
(难度系数A)正确答案:A
6、关系数据库中,实现表与表之间的联系是通过_________。
A、实体完整性规则 B、值域
C、用户自定义完整性 D、参照完整性规则
(难度系数B)正确答案:D
7、设关系R有K1个元组,关系S有K2个元组,则关系R和S进行笛卡尔积操作后的结果关系中的元组数目是_________。
A、K1+K2 B、≥K1+K2
C、K1×K2 D、≤K1×K2
(难度系数A)正确答案:C
8、对关系的完整性约束通常包括_________三种。
A、实体完整性、属性完整性、关系完整性;
B、实体完整性、参照完整性、用户定义完整;
C、实体完整性、属性完整性、用户定义完整;
D、实体完整性、属性完整性、参照完整性;
(难度系数A)正确答案:B
9、在SQL中,建立视图用的命令是_________。
A、CREATE VIEW B、CREATE TABLE
C、CREATE SCHEMA D、CREATE INDEX
(难度系数B)正确答案:A
10、数据库的完整性是指数据的________和________。
(1)正确性 (2)合法性 (3)不被非法存取 (4)相容性 (5)不被恶意破坏
A、(1)和(3) B、(2)和(5)
C、(1)和(4) D、(2)和(4)
(难度系数B)正确答案:C
11、数据库设计的概念结构设计阶段,表示概念结构的常用方法和描述工具是_________。
A、数据流程分析法和数据流图 B、实体-联系方法和E-R图
C、结构分析法和模块结构图 D、层次分析法和层次结构图
(难度系数B)正确答案:B
12、应用数据库的主要目的是为了_________。
A、解决保密问题 B、解决数据完整性问题
C、共享数据问题 D、解决数据量大的问题
(难度系数C)正确答案:C
13、“一个事务中的诸操作要么全做,要么都不做”,这是事务的什么特性____。A、原子性 B、一致性
C、隔离性 D、持久性
(难度系数A)正确答案:A
14、采用数据库镜像技术,主要是为了有效解决_________的问题。
A、复制故障 B、系统故障
C、事务故障 D、介质故障
(难度系数B)正确答案:D
15、用如下的SQL语句创建一个Student表
CREATE TABLE Student ( SNO Char(4) NOT NULL,
NAME Char(8) NOT NULL,
SEX Char(2), AGE INT )
可以插入到Student表中的元组是_________。
A、(‘0731’,‘李大明’,男,23)
B、(‘0731’,‘李大明’,23,男)
C、( NULL,‘李大明’,‘男’,‘23’)
D、(‘0731’,NULL,‘男’,23)
(难度系数A)正确答案:A
16、在关系代数运算中,五种基本运算为_________。
A、并、差、选择、投影、连接
B、并、交、选择、投影、笛卡尔积
C、并、差、选择、投影、笛卡尔积
D、并、除、投影、笛卡尔积、选择
(难度系数B)正确答案:C
17、SQL Server安装程序创建4个系统数据库,下列哪个不是_________系统数据库。
A、master B、model C、pub D、msdb
(难度系数C)正确答案:D
18、下列SQL语句中,修改表结构的是_________。
A、ALTER B、CREATE C、UPDATE D、INSERT
(难度系数C)正确答案:A
19、若事务T对数据 R已加 S锁,则对数据R_________。
A、不能加S锁可以加X锁 B、可以加S锁不能加X锁
C、可以加S锁也可以加X锁 D、不能加任何锁
(难度系数B)正确答案:B
20.设有两个事务T1、T2,其并发操作如图1所示,下面描述正确的是_______。
A、该操作不存在问题 B、该操作不能重复读
C、该操作丢失修改 D、该操作读“脏”数据
(难度系数A)正确答案:D
时刻 |
事务T1 |
事务T2 |
数据库A的值 |
T0 |
read (A) |
|
A=10 |
T1 |
A=A*A |
|
|
T2 |
write(A) |
|
A=100 |
T3 |
|
read (A) |
A=100 |
T4 |
rollback |
|
|
图1 事务并发操作图
二、填空(每空1分,共20分)
1. 数据库常用的数据模型有__________、层次模型、__________。
(难度系数C)正确答案: 关系模型 网状模型
2、数据模型是由__________、__________、和__________三部分组成的。
(难度系数B)正确答案:数据结构 数据操作 完整性约束
3、在数据库的三级模式结构中,用来描述数据库中全体数据的全局逻辑结构和特征的是__________。
(难度系数B)正确答案: 模式
4、数据库系统的核心是____________________。
(难度系数C)正确答案:数据库管理系统或DBMS
5、规范化数据库设计分为以下六个设计阶段:需求分析阶段、__________、__________、物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段。
(难度系数B)正确答案:概念结构设计 逻辑结构设计
6、删除表中记录用_____________语句,修改表结构用___________语句。
(难度系数A)正确答案:Delete Alte
7、数据库系统中可能发生各种各样的故障,引起故障的原因大致可以分为几类,分别为:____________、计算机病毒、____________和介质故障。
(难度系数A)正确答案:事务内部故障 系统故障
8、在数据库概念结构设计中,各分E-R模型之间的冲突主要有:属性冲突、__________和结构冲突。
(难度系数B)正确答案: 命名冲突
9、SQL中,表有三种:____________、____________和____________。
(难度系数C)正确答案:基本表(实表) 视图(虚表) 导出表(临时表)
10、数据库中术语英文缩写有“RDBMS”和DML等,其中文的意思分别为_______________和_______________。
(难度系数B)正确答案: 关系数据库管理系统 数据操纵语言
11、二级封锁协议除了可以防止丢失修改,还可以防止________________。
(难度系数B)正确答案:读“脏”数据
三、简答题:(3个小题共15分)
1、什么是数据库?(4分)
(难度系数C)正确答案:
答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。 (2分)
数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。 (2分)
2、DBA的职责是什么?(4分)
(难度系数B)正确答案:
答:(1)参与数据库设计,决定数据库的结构和内容; (1分)
(2)定义数据的安全性、完整性,负责分配用户对数据库的使用权限和口令管理;(1分)
(3)监督控制数据库的使用和运行,改进或重新构造数据库系统; (1分)
(4)帮助终端用户使用数据库。 (1分)
3、在数据库设计过程中将E-R模型转换为关系数据模型的转换原则? (7分)
(难度系数A)正确答案:
答:E-R图中的每个实体,对应一个关系,该关系具有属性为实体的全部属性,关键字为实体的关键字。E-R图中的一个联系对应一个关系,该关系具有属性为联系的属性以及该联系相关的实体的关键字。考虑到数据库优化,根据联系类型不同在转换为关系模式时具体处理不同: (2分)
(1)联系类型为1:1时,-先将两个实体分别转换两个关系模式,然后在任意一个关系模式中加入另一个关系模式的键和联系类型的属性。 (1分)
(2)1:N-先将两个实体分别转换为两个关系模式,然后在N端实体转换的关系模式中加入1端实体转换的关系模式的键和联系类型的属性。 (2分)
(3)M:N-先将两个实体分别转换为两个关系模式,然后将联系类型转换为第三个关系模式,其属性由两端实体的键和联系类型的属性构成。 (2分)
四、T-SQL语言编程题(共33分)
有学生-课程关系数据库,各关系表描述如下,并用T-SQL语句实现下列问题:
列名 |
说明 |
数据类型 |
约束 |
Sno |
学号 |
字符(8) |
主键 |
Sname |
姓名 |
字符(12) |
非空,唯一 |
Ssex |
性别 |
字符(2) |
取‘男’或‘女’, 默认值 ‘女’ |
Sage |
年龄 |
短整型 |
取值16~40,默认值21 |
Sdept |
院系 |
字符(20) |
默认 ‘电子系’ |
Cno |
Cname |
Teacher |
C1 |
操作系统 |
李明 |
C2 |
大学物理 |
赵华 |
C3 |
电子商务 |
周亮 |
…… |
…… |
…… |
Sno |
Cno |
Grade |
S07001 |
C1 |
76 |
S07002 |
C2 |
82 |
S07003 |
C3 |
65 |
…… |
…… |
…… |
①用语句创建Student表 ; (6分)
(难度系数C)正确答案:
CREATE TABLE Student
( Sno CHAR(8) PRIMARY KEY,
Sname CHAR(12) NOT NULL UNIQUE
,
Ssex CHAR(2) CHECK(Tsex in('男','女')) DEFAULT '女',
Sage INT CHECK(Tage>=16 AND Tage<=40) DEFAULT 21,
Sdept CHAR(20) DEFAULT ‘‘电子系’
);
②检索姓"李"且倒数第2个字为"华"或"涛"字的学生的姓名和学号;
(5分)
(难度系数C)正确答案:
SELECT Sname,Sno
FROM Student
WHERE Sname LIKE '李% [华涛] _ _';
③向Student表中插入元组“S07060,王梅”,并写出该记录的详细信息。(3分)
(难度系数C)正确答案:
INSERT
INTO Student (Sno, Sname)
VALUES( ‘S07060,’ 王梅’ )
该记录详细信息如下:
S07060 |
王梅 |
女 |
21 |
计算机系 |
④删除选课成绩在45分以下的学生记录。 (4分)
(难度系数C)正确答案:
DELETE
FROM Student
WHERE SNO IN
(SELECT SNO
FROM SC
WHERE GRADE<45);
⑤把“网络工程”课程成绩提高8%。 (4分)
(难度系数C)正确答案:
UPDATE SC
SET Grade=Grade*1.08
WHERE Cno IN
(SELECT Cno
FROM Course
WHERE Cname=‘网络工程’);
⑥求出女同学的每一年龄组(超过4人)有多少人?要求查询结果按人数升序排列,人数相同的按年龄降序排列。 (6分)
(难度系数C)正确答案:
SELECT Sage, COUNT(Sno)
FROM Student
WHERE Ssex=‘女’
GROUP BY Sage HAVING COUNT(Sno)>4
⑦定义视图S_AVG,其中包括学生学号以及每个学生选修课程的门数(要求成绩非空)和平均成绩。 (5分)
(难度系数C)正确答案:
CREATE VIEW S_age (Sno, Cno_num, Avg_grade)
AS SELECT Sno,COUNT(Cno),AVG(grade)
FROM SC
WHERE grade IS NOT NULL
GROUP BY Sno
五、综合应用题(共12分)
1、某高校教务处教务管理中需要如下信息:
教师:教师编号、姓名、性别、职务、职称、电话、E-mail
学生:学号,姓名、性别、年龄、所学专业、籍贯
课程:课程号、课程名、开课学期、所属类别
院系:系名、系主任、办公地点、办公电话
其中:①一个系可以有多个学生,一个学生可以选修多门课程,而一门课程可以为多个学生选修;②一个单位(系)可以有多个教师,一个教师只能在一个单位(系)工作,一个教师可以讲授多门课程,一门课程可以为多个教师讲授,完成如下设计:
(1)根据院系,教师,课程,学生等实体,设计该教务管理系统局部E-R模型;(7分)
(难度系数A)正确答案:
(2)将该E-R图转换为关系模型结构,并用下划线标明各关系中的主关键字;(5分)
(难度系数B)正确答案:
学生(学号,姓名,性别,出生年月,籍贯)
课程(课程号,课程名,课程类别,开课学期)
教师(教师编号,姓名,性别,职称,电话,E-Mail)
系(系名,办公地点,系主任,联系电话)
选修(学号,课程号,成绩,学分)