数据库系统概论 - 期末考试复习题(附答案)

更新时间:2024-06-19 00:20:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据库系统概论 2011年期末考试复习题 一、选择题

? 第(1)至(3)题基于以下的叙述:有关系模式A(C,T,H,R,S),基中各属性的含义是: ? C:课程T:教员H:上课时间R:教室S:学生 ? 根据语义有如下函数依赖集:? F={C→T,(H,R)→C,(H,T)→R,(H,S)→R} ? 1、关系模式A的码是(D)

? A. C B. (H,R) C.(H,T) D.H,S) ? 2、关系模式A的规范化程度最高达到(B) ? A. 1NF B. 2NF C. 3NFD. BCNF

? 3、现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到(D) ? A. 1NF B. 2NF C. 3NF D. BCNF ? 4.设有关系R(A,B,C)和S(C,D)。与SQL语句? select A,B,D from R,S where R.C=S.C ? 等价的关系代数表达式是(B)

? A. σR.C=S.C(πA,B,D(R×S)) ? B. πA,B,D(σR,C= S.C (R×S)) ? C. σR.C=S.C((πA,B R)×(πDS)) ? D. σR,C=S.C(πD((πA,BR)×S)

? 5、设关系R和关系S的元数分别是3和4,关系T是R与S的广义笛卡尔积,即:T=R×S,则关系T的元数是(C)

? A. 7 B. 9 C. 12 D. 16 ? 6、数据库设计阶段分为(B)

? A. 物理设计阶段、逻辑设计阶段、编程和调试阶段

? B. 概念设计阶段、逻辑设计阶段、物理设计阶段、实施和调试阶段 ? C. 方案设计阶段、总体设计阶段、个别设计和编程阶段 ? D. 模型设计阶段、程序设计阶段和运行阶段

? 7、设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面关于多值依赖的叙述中,不正确的是(C)

? A. 若X→→Y,则X→→Z B. 若X→Y,则X→→Y ? C. 若X→→Y,且Y′?Y,则X→→Y′ D. 若Z=Φ,则X→→Y

? 8、查询优化策略中,正确的策略是(D)

A.尽可能早地执行笛卡尔积操作 B.尽可能早地执行并操作 C.尽可能早地执行差操作 D.尽可能早地执行选择操作 ? 9、语句delete from sc 表明(A)

A. 删除sc中的全部记录 B. 删除基本表sc?

C. 删除基本表sc中的列数据 D. 删除基本表sc中的部分行

? 10、在DB应用中,一般一条SQL 语句可产生或处理一组记录,而DB主语言语句一般一次只能处理一条记录,其协调可通过哪种技术实现(B) ? A. 指针 B. 游标 C. 数组 D. 栈 11、五种基本关系代数运算是( A )

? A. ∪,-,×,π和σ B. ∪,-,?,π和σ ? C. ∪,∩,×,π和σ D. ∪,∩,?,π和σ ? 12、下列聚合函数中不忽略空值(null) 的是 ( C )

? A. SUM (列名) B. MAX (列名)? C. COUNT ( * ) D. AVG (列名) ? 13、在数据库设计中,将ER图转换成关系数据模型的过程属于(B) ? A. 需求分析阶段 B. 逻辑设计阶段? C. 概念设计阶段D. 物理设计阶段

? 第(14)至(16)题是基于如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息 表关系DEPT的主键是部门号。

? 14、若执行下面列出的操作,哪个操作不能成功执行?(D) ? A. 从EMP中删除行(?010?,?王宏达?,?01?,1200) ? B. 在EMP中插入行(?102?,?赵敏?,?01?,1500) ? C. 将EMP中雇员号=?056?的工资改为1600元 ? D. 将EMP中雇员号=?101?的部门号改为?05?

? 15、若执行下面列出的操作,哪个操作不能成功执行?(C)

? A. 从DEPT 中删除部门号=?03?的行 ? B. 在DEPT中插入行(?06?,?计划部?,?6号楼?) ? C. 将DEPT中部门号=?02?的部门号改为?10? ? D. 将DEPT中部门号=?01?的地址改为?5号楼?

? 16、在雇员信息表关系EMP中,哪个属性是外键(foreign key)?(C) A. 雇员号 B. 雇员名 C. 部门号 D. 工资

? 17、在SQL语言的SELECT语句中,实现投影操作的是哪个子句?(A) ? A. select B. from C. Where D. group by

? 18、设属性A是关系R的主属性,则属性A不能取空值(NULL)。这是(A) ? A. 实体完整性规则 B. 参照完整性规则 ? C. 用户定义完整性规则 D. 域完整性规则 填空题

? 1、用树型结构表示实体类型及实体间联系的数据模型称为 层次模型。 ? 2、关系数据库的关系演算语言是以谓词演算为基础的DML语言。

? 3、从数据库管理系统角度看,数据库系统通常采用三级模式结构,即数据库系统由内模式、外模式和 模式 组成。

? 4、RDMBS查询处理可分为查询分析、查询检查、查询优化和查询执行 四个阶段。

? 5、概念结构设计是对现实世界的一种抽象,一般有分析 、聚集、概括共三种抽象机制。 ? 6、物理优化就是要选择高效合理的操作算法或 存取路径 以求得优化的查询计划。

? 7、将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计,概念结构设计通常有四类方法:自顶向上、自底向下、逐步扩张和混合策略。

? 8、在关系模式R中若不存在这样的码X,属性组Y及非属性组Z(Z不是Y的子集)使得X→Y,Y→Z成立,且YX,则称R∈3NF。 简答题 ? 1、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性? 答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

? 2、数据库的完整性概念与数据库的安全性概念有什么区 别和联系?

答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存在不符

合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出( Garba : e InGarba : e out )所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。 ? 3、试给出多值依赖、和4NF的定义。 ? 4、试给出函数依赖、BCNF的定义。

? 5、简述嵌入式SQL语句与主语言之间的通信。

首先用SQL通信区(SQL Communication Area,简称SQLCA)向主语言传递SQL语句的执行状态信息,使主语言能够据此控制程序流程;在程序运行中,主语言向SQL语句提供参数,使用主变量(host variable)输入数据;同时,程序把SQL语句查询数据库的结果交主语言进一步处理,其中使用主变量和游标(cursor)向主语言输出数据,从而实现了SQL语言的过程化工作。

SQL语句执行后,系统要反馈给应用程序若干信息,主要包括描述系统当前工作状态和运行环境的各种数据,这些信息将送到SQL通信区SQLCA中。应用程序从SQLCA中取出这些状态信息,据此决定接下来执行的语句。

? 6、试述RDBMS查询优化的一般步骤。 ( l )把查询转换成

某种内部表示,通常用的内部表示是语法树。 ( 2 )把语法树转换成标准(优化)形式。即利用优化算法,把原始的语法树转换成优化的形式。 ( 3 )选择低层的存取路径。 ( 4 )生成查询计划,选择代价最小的。

? 7、试述RDBMS查询优化的一般准则。

答:下面的优化策略一般能提高查询效率: ( l )选择运算应尽可能先做; ( 2 )把投影运算和选择运算同时进行; ( 3 )把投影同其前或其后的双目运算结合起来执行; ( 4 )把某些选择同在它前面要执行的笛卡儿积结合起来成为一个连接运算; ( 5 )找出公共子表达式; ( 6 )选取合适的连接算法。

? 8、什么是数据库的逻辑结构设计?试述其设计步骤。

答:数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本 E 一 R 图转换为与选

用的 DBMS 产品所支持的数据模型相符合的逻辑结构。设计步骤为 : ( l )将概念结构转换为一般的关系、网状、层次模型; ( 2 )将转换来的关系、网状、层次模型向特定 DBMS 支持下的数据模型转换; ( 3 )对数据模型进行优化。 ? 9、数据字典的内容和作用是什么?

答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括: ( l )数据项;

( 2 )数据结构; ( 3 )数据流; ( 4 )数据存储; ( 5 )处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义来描述数据流和数据存储的逻辑内容。数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充实、完盖。 设计题

1、今有两个关系模式: 职工(职工号,姓名,年龄,职务,工资,部门号)Person(pno, pname, page, ptitle, psal, dno)部门 (部门号,名称,经理名,地址,电话号)Depart(dno, dname, dmanager, daddress, dtel)请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能: (1)用户yong对两个表有INSERT 和DELETE权力。 GRANT INSERT,DELETE ON Person,Depart TO yong

(2)用户liu对职工表有SELECT权力,对工资字段具有更新权力。 GRANT SELECT,UPDATE(psal) ON Person TO liu

(3)用户zhang具有修改这两个表的结构的权力。 GRANT ALTER TABLE ON Person,Depart TO zhang;

(4)用户yang具有从每个部门职工中SELECT最高工资、最低工资、平均工资的权力,他不能查看每个人

的工资,并具有给其他用户授权的权力。 CREATE VIEW psal AS

SELECT Depart.dname,MAX(psal),MIN(psal),AVG(psal) FROM Person,Depart

WHERE Person.dno=Depart.dno GROUP BY Person.dno GRANT SELECT ON psal

TO yang with grant option ; (5)撤销各用户yang所授予的权力

REVOKE ALL PRIVILIGES ON Person,Depart FROM YANG;

? 2、假设有下面两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门 号),其中职工号为主码;部门(部门号,名称,经理名,电话),其中部门号 为主码。用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条 件的定义:定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。 答:CREATE TABLE DEPT (Deptno NUMBER(2), Deptname VARCHAR(10), Manager VARCHAR(10), PhoneNumber Char(12)

CONSTRAINT PK_SC RIMARY KEY(Deptno)); CREATE TABLE EMP (Empno NUMBER(4), Ename VARCHAR(10), Age NUMBER(2),

CONSTRAINT C1 CHECK ( Aage<=60), Job VARCHAR(9), Sal NUMBER(7,2), Deptno NUMBER(2), CONSTRAINT FK_DEPTNO FOREIGN KEY(Deptno)

REFFERENCES DEPT(Deptno));

? 3、设某商业集团关于商店销售商品的数据库中有三个基本表:

? 商店SHOP(S#,SNAME,AREA,MGR_NAME)其属性是商店编号,商店名称,区域名,经理姓名。

销售SALE(S#,G#, QUANTITY)其属性是商店编号,商品编号,销售数量。 商品GOODS(G#,GNAME,PRICE) ? 其属性是商品编号,商品名称,单价。

? (1)试写出下列查询的关系代数表达式、元组表达式和关系逻辑规则:检索销售“冰箱”的商店的编号和商店名称。

解:关系代数表达式:πS#,SNAME(σGNAME='冰箱'(SHOP?SALE?GOODS)) 元组表达式:{ t | (?u) (?v) (?w) (SHOP (u)∧SALE (v)∧GOODS (w) ∧u[1]=v[1]∧v[2]=w[1]∧w[2]= '冰箱'∧t[1]=u[1]∧t[2]=u[2])}

关系逻辑规则:W(u1,u2)?SHOP(u1,u2,u3,u4)∧SALE(u1,v2,v3)∧GOODS(v2, '冰箱',w3) ? (2)试写出上面第(1)问的SELECT语句表达形式。 解:SELECT语句如下:

SELECT A.S#,SNAME

FROM SHOP A,SALE B,GOODS C

WHERE A.S#=B.S# AND B.G#=C.G# AND GNAME='冰箱';

? (3)试写出下列操作的SQL语句:从SALE表中,把“开开商店”中销售单价高于1000元的商品的销售

元组全部删除。

解:DELETE FROM SALE

WHERE S# IN(SELECT S# FROM SHOP

WHERE SNAME='开开商店') AND G# IN(SELECT G# FROM GOODS

WHERE PRICE>1000);

? (4)写一个断言,要求区域名为“EAST”的商店里销售商品的单价不能低于100元。 解:CREATE ASSERTION ASSE8 CHECK (100<=ALL(SELECT PRICE

FROM SHOP A,SALE B,GOODS C

WHERE A.S#=B.S# AND B.G#=C.G# AND AREA='EAST')); 或 CREATE ASSERTION ASSE8 CHECK (NOT EXISTS(SELECT *

FROM SHOP A,SALE B,GOODS C WHERE A.S#=B.S# AND B.G#=C.G#

AND AREA='EAST' AND PRICE<100));

? (5)试写出下列操作的SQL语句:

? 统计区域名为“EAST”的所有商店销售的每一种商品的总数量和总价值。 ? 要求显示(G#,GNAME,SUM_QUANTITY,SUM_VALUE),其属性为商品编号、商品名称、销售数量、销售价值。

解:SELECT C.G#,GNAME,SUM(QUANTITY)AS SUM_QUANTITY,

PRICE*SUM(QUANTITY)AS SUM_VALUE

FROM SHOP A,SALE B,GOODS C

WHERE A.S#=B.S# AND B.G#=C.G# AND AREA='EAST' GROUP BY C.G#,GNAME;

(注:SELECT子句中的属性C.G#,GNAME应在分组子句中出现)

4、今有一个层次数据库实例,试用子女一兄弟链接法和层次序列链接法画出它的存储结构示意图。

? 5、请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:读者 号,姓名,地址,性别,年龄,单位。对每本书存有:书号,书名,作者,出版社。对

每本被借出的书存有读者号、借出日期和应还日期。要求:给出E 一R 图,再将其转换为关系模型。 答:

关系模型为:读者(读者号,姓名,地址,性别书(书号,书名,作者,出版社)借书 (读者号,书号,借出日期,年龄,单位)应还日期)

? 6、设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:供应商(供应商代码,供应商姓名,供应商状态,供应商所在城市) S(SNO,SNAME,STATUS,CITY)

?零件(零件代码,零件名,颜色,重量)

?P(PNO,PNAME,COLOR。WEIGHT)

? 工程项目(工程项目代码,工程项目名,工程项目所在城市) ? J(JNO,JNAME,CITY)

? 供应情况(供应商代码,零件代码,工程项目代码,供应数量) ? SPJ(SNO,PNO,JNO,QTY)

? 试用关系代数和SQL语言完成下列查询。 ? (1)求供应工程J1零件的供应商号码SNO:

SELECT DIST SNO FROM SPJ WHERE JNO='J1' ? (2)求供应工程J1零件P1的供应商号码SNO:

SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'; ? (3)求供应工程J1零件为红色的供应商号码SNO:

SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ PNO=P PNO AND COLOR='红'; ? (4)求没有使用天津供应商生产的红色零件的工程号JNO:

SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM

SPJ,P,S WHERE S.CITY=' 天津 ' AND COLOR=' 红 ' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO);

? (5)求至少用了供应商S1所供应的全部零件的工程号JNO: 由于 VFP 不允许子查询嵌套太深,将查询分为两步 A、查询S1 供应商供应的零件号

SELECT DIST PNO FROM SPJ WHERE SNO='S1'结果是(P1,P2); B、查询哪一个工程既使用 P1 零件又使用 P2 零件。 SELECT JNO FROM SPJ WHERE PNO='P1'

AND JNO IN (SELECT JNO FROM SPJ WHERE PNO='P2'); ? 7、设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:

? 供应商(供应商代码,供应商姓名,供应商状态,供应商所在城市) ? S(SNO,SNAME,STATUS,CITY)

? 零件(零件代码,零件名,颜色,重量) ? P(PNO,PNAME,COLOR。WEIGHT)

? 工程项目(工程项目代码,工程项目名,工程项目所在城市) ? J(JNO,JNAME,CITY)

? 供应情况(供应商代码,零件代码,工程项目代码,供应数量) ? SPJ(SNO,PNO,JNO,QTY)

? 试用SQL语言完成以下各项操作:

? (1)找出所有供应商的姓名和所在城市。 SELECT SNAME,CITY FROM S

? (2)找出所有零件的名称、颜色、重量。 SELECT PNAME,COLOR,WEIGHT FROM P

? (3)找出使用供应商S1所供应零件的工程号码。 SELECT DIST JNO FROM SPJ WHERE SNO='S1'

? (4)找出工程项目J2使用的各种零件的名称及其数量。 SELECT PNAME,QTY FROM SPJ,P

WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2' ? (5)找出上海厂商供应的所有零件号码。

SELECT PNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND CITY='上海' ? (6)找出使用上海产的零件的工程名称。 SELECT JNAME FROM SPJ,S,J

WHERE S.SNO=SPJ.SNO AND S.CITY='上海' AND J.JNO=SPJ.JNO ? (8)把全部红色零件的颜色改成蓝色。

UPDATE P SET COLOR='蓝' WHERE COLOR='红'

? (9)由S5供给J4的零件P6改为由S3供应。

UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6' ? (10)请将(S2,J6,P4,200)插入供应情况关系。 INSERT INTO SPJ VALUES(‘S2’,‘J6’,‘P4’,200)

综合题

? 1、假设某商业集团数据库中有一关系模式R如下: ? R (商店编号,商品编号,数量,部门编号,负责人) ? 如果规定:

? (1) 每个商店的每种商品只在一个部门销售; ? (2) 每个商店的每个部门只有一个负责人; ? (3) 每个商店的每种商品只有一个库存数量。 ? 试回答下列问题:

? (1) 根据上述规定,写出关系模式R的基本函数依赖; (商店编号,商品编号)→ 部门编号 (商店编号,商品编号)→ 数量 (商店编号,部门编号)→ 负责人 ? (2) 找出关系模式R的候选码; 候选码(商店编号,商品编号)

? (3) 试问关系模式R最高已经达到第几范式?为什么? 1NF,存在部分函数和传递函数依赖。

? (4) 如果R不属于3NF,请将R分解成3NF模式集。 R1(商店编号,商品编号,商品库存数量,部门编号);R2(商店编号,负责人) ? 2、建立一个关于系、学生、班级、学会等诸信息的关系数据库。 ? 学生:学号、姓名、出生年月、系名、班号、宿舍区。 ? 班级:班号、专业名、系名、人数、入校年份。 ? 系:系名、系号、系办公地点、人数。

? 学会:学会名、成立年份、办公地点、人数。

? 语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。

? 请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。指出各关系模式的候选码、外部码,有没有全码存在? 解:(1)关系模式如下:

学生:S(Sno,Sname,Sbirth,Dept,Class,Rno) 班级:C(Class,Pname,Dept,Cnum,Cyear) 系:D(Dept,Dno,Office,Dnum) 学会:M(Mname,Myear,Maddr,Mnum) (2)每个关系模式的最小函数依赖集如下:

A、学生S (Sno,Sname,Sbirth,Dept,Class,Rno) 的最小函数依赖集如 下:Sno?Sname,Sno?Sbirth,Sno?Class,Class?Dept,DEPT?Rno 传递依赖如下:

由于Sno?Dept,而Dept?Sno ,Dept?Rno(宿舍区) 所以Sno与Rno之间存在着传递函数依赖。 由于Class?Dept,Dept ? Class,Dept?Rno 所以Class与Rno之间存在着传递函数依赖。

由于Sno?Class,Class?Sno,Class?Dept

所以Sno与Dept之间存在着传递函数依赖。

B、班级C(Class,Pname,Dept,Cnum,Cyear)的最小函数依赖集如下: Class?Pname,Class?Cnum,Class?Cyear,Pname?Dept. 由于Class?Pname,Pname?Class,Pname?Dept

所以C1ass与Dept之间存在着传递函数依赖。

C、系D(Dept,Dno,Office,Dnum)的最小函数依赖集如下: Dept?Dno,Dno?Dept,Dno?Office,Dno?Dnum

根据上述函数依赖可知,Dept与Office,Dept与Dnum之间不存在传递依赖。 D、学会M(Mname,Myear,Maddr,Mnum)的最小函数依赖集如下: Mname?Myear,Mname?Maddr,Mname?Mnum

该模式不存在传递依赖。

(3)各关系模式的候选码、外部码,全码如下:

A、学生S候选码:Sno;外部码:Dept、Class;无全码 B、班级C候选码:Class;外部码:Dept;无全码 C、系D候选码:Dept或Dno;无外部码;无全码 D、学会M候选码:Mname;无外部码;无全码

? 3、现有一个未规范化的表,包含了项目、部件和部件向项目已提供的数量信息。请采用规范化方法,将该表规范化到3NF要求。

答:原表存在的函数依赖关系为: 部件号→部件名,部件号→现有数量,

项目代号→项目内容,项目代号→项目负责人, (项目代号,部件号)→已提供数量。 关系键为(项目代号,部件号)。(2分) 存在部分函数依赖:

(项目代号,部件号)p→部件名,(项目代号,部件号)p→现有数量,

(项目代号,部件号)p→项目内容,(项目代号,部件号)p→项目负责人。(1分) 消除部分函数依赖,分解得到以下的三个关系模式: 部件(部件号,部件名,现有数量)

项目(项目代号,项目内容,项目负责人) 提供(项目代号,部件号,已提供数量)

该关系达到2NF。由于不存在传递函数依赖,也达到3NF。(3分)

? 4、涉及到学生、教师和课程的关系模式

STC(SNo,SN,SA,TN,CN,G),其中6个属性分别为学生的学号、姓名、年龄、教师的姓名、课程名以及学生的成绩。假设学生有重名,课程名也可能有重名。又假设每个教师只教一门课,但一门课可有几个教师开设。当某个学生选定某门课后,其上课教师就固定了。 ? (1)写出键码和函数依赖;

? (2)分解关系模式使之属于BC范式。 答:

1) 键码:{SNo,CN}和{SNo,TN}

函数依赖:SNo SN,SA (BC范式违例)

TN CN (BC范式违例) SNo,CN TN,G

P a) SNo,CN SN,SA SNo,TN G

P b) SNo,TN CN

P c) SNo,TN SN,SA (a,b,c为部分依赖,可不写)

2) STC1(SNo,SN,SA) STC2(TN,CN) STC3(SNo,TN,G)

一、单项选择题(本大题共10小题,共30分)

1.数据库中,数据的物理独立性是指( )。

A.数据库与数据库管理系统的相互独立 B.用户程序与DBMS的相互独立

C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中的数据的逻辑结构相互独立

2. 从E-R模型关系向关系转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是 A.M端实体的关键字 B.N端实体的关键字 ( ) C.M端实体关键字与N端实体关键字组合 D.重新选取其他属性

3.保护数据库,防止未经授权的或不合法的使用造成的资料泄漏、更改破坏。这是指数据的( ) A.安全性 B.完整性 C.并发控制 D.恢复 4. 关系模式中的各级模式之间的关系为( )。 A.3NF 2NF 1NF B.3NF 1NF 2NF C.1NF 2NF 3NF D.2NF 1NF 3NF

5. 五种基本关系代数运算是 ( ) A.∪,-,×,π和σ B.∪,-,∞,π和σ C.∪,∩,×,π和σ D.∪,∩,∞,π和σ

6. 在数据库设计中,将ER图转换成关系数据模型的过程属于 ( )

A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段 7. SQL中,下列涉及空值的操作,不正确的是 ( )

A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 8.关系数据库规范化是为解决关系数据库中( )问题而引入的。 A.插入、删除和数据冗余 B.提高查询速度

C.减少数据操作的复杂性 D.保证数据的安全性和完整性 二、填空题(本大题共5小题,每空1分,共10分)

1.对于非规范化的模式,结过使属性域变为简单域转变为1NF,将1NF经过消除非主属性对码的_______________转变为2NF,将2NF经过消除非主属性对码的_______________转变为3NF。 2.在关系A(S,SN,D)和B(D,CN,NM)中,A的主键是S,B的主键是D,则D在S中称为___________。

3.数据模型由_________________、_________________和_________________三部分组成的。 4.数据库体系结构按照_______________、_______________和_______________三层结构进行组织。

5.E-R图向关系模型转化要解决的问题是如何将实体和实体之间的联系转换成关系模式,如何确定这些关系模式的_________________。

三、计算题(本大题共5小题,每小题2分,共10分)

设有如下图所示的关系R,S和T,计算:

⑴ R1=R∪S R S T ⑵ R2=R-S ⑶ R3=R T ⑷ R4=R T (5) R5=

四、设计题(本大题共5小题,每小题4分,共20分) 设教学数据库中有三个基本表:

学生表S(SNO,SNAME,SEX,AGE,DEPT) 课程表C(CNO,CNAME,TEACHER) 学生选课表SC(SNO,CNO,GRADE)

其中:SNO为学号,SNAME为姓名,SEX为性别,AGE为年龄,DEPT为系别,CNO为课程CNAME为课程名,TEACHER 任课老师,GRADE为成绩。 试写出下列操作的SQL语句:

1检索学生姓名及其所选修课程号和成绩。 2 检索选修课程“C2”的学生中的最高成绩。

3检索所有比“王华”年龄大的学生姓名、年龄和性别。

4 检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。 5 把Wu老师的女同学选课成绩增加5%

五、综合题(本大题共2小题,每小题15分,共30分)

1.假设某商业集团数据库中有一关系模式R如下:R (商店编号,商品编号,数量,部门编号,负责人) 如果规定:

(1) 每个商店的每种商品只在一个部门销售; (2) 每个商店的每个部门只有一个负责人; (3) 每个商店的每种商品只有一个库存数量。 试回答下列问题:

(1) 根据上述规定,写出关系模式R的基本函数依赖; (2) 找出关系模式R的候选码;

(3) 试问关系模式R最高已经达到第几范式?为什么? (4) 如果R不属于3NF,请将R分解成3NF模式集。

2.假定一个部门的数据库包括以下的信息:

职工的信息:职工号、姓名、住址和所在部门。 部门的信息:部门所有职工、经理和销售的产品。

产品的信息:产品名、制造商、价格、型号及产品内部编号。 制造商的信息:制造商名称、地址、生产的产品名和价格。 完成如下设计:

(1)设计该计算机管理系统的E-R图;

(2)写出关系模式集,并用下划线和波浪线标识出每个模式的主码和外码。 (3)在上述数据库中,写出主码和外码的总数这两个数字。

数据库系统概论复习资料:123

第一章:

一选择题:

1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是 阶段。

A.数据库系统 B.文件系统 C.人工管理 D.数据项管理 答案:A 2.数据库的概念模型独立于 。

A.具体的机器和DBMS B.E-R图 C.信息世界 D.现实世界 答案:A 3.数据库的基本特点是 。

A.(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余大,易移植 (4)统一管理和控制

B.(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制

C.(1)数据可以共享(或数据结构化) (2)数据互换性 (3)数据冗余小,易扩充 (4)统一管理和控制

D.(1)数据非结构化 (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制 答案:B

4. 是存储在计算机内有结构的数据的集合。

A.数据库系统 B.数据库 C.数据库管理系统 D.数据结构 答案:B

5.数据库中存储的是 。

A.数据 B.数据模型 C.数据以及数据之间的联系 D.信息 答案:C 6. 数据库中,数据的物理独立性是指 。

A.数据库与数据库管理系统的相互独立 B.用户程序与DBMS的相互独立

C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构相互独立 答案:C

7. .数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指 。 A.同一个应用中的多个程序共享一个数据集合 B.多个用户、同一种语言共享数据

C.多个用户共享一个数据文件 D.多种应用、多种语言、多个用户相互覆盖地使用数据集合 答案:D

8.据库系统的核心是 。

A.数据库 B.数据库管理系统 C.数据模型 D.软件工具

答案:B

9. 下述关于数据库系统的正确叙述是 。

A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余 C.数据库系统中数据的一致性是指数据类型一致

D.数据库系统比文件系统能管理更多的数据 答案:A

10. 数将数据库的结构划分成多个层次,是为了提高数据库的 ① 和 ② 。 ①A.数据独立性 B.逻辑独立性 C.管理规范性 D.数据的共享

②A.数据独立性 B.物理独立性 C.逻辑独立性 D.管理规范性 答案:①B ②B

11. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是 。

A.DBS包括DB和DBMS B.DDMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 答案:A 12. 在数据库中,产生数据不一致的根本原因是 。

A.数据存储量太大 B.没有严格保护数据 C.未对数据进行完整性控制 D.数据冗余 答案:D

13. 数据库管理系统(DBMS)是 。

A.数学软件 B.应用软件 C.计算机辅助设计 D.系统软件 答案:D

14. 数据库管理系统(DBMS)的主要功能是 。

A.修改数据库 B.定义数据库 C.应用数据库 D.保护数据库 答案:B 15. 数据库系统的特点是 、数据独立、减少数据冗余、避免数据不一致和加强了数据保护。 A.数据共享 B.数据存储 C.数据应用 D.数据保密 答案:A 16据库系统的最大特点是 。

A.数据的三级抽象和二级独立性 B.数据共享性 C.数据的结构化 D.数据独立性 答案:A

17. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为 。

A.数据定义功能 B.数据管理功能 C.数据操纵功能 D.数据控制功能 答案:C 18. 数据库管理系统是 。

A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译程序D.一种操作系统 答案:B

19.据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是() A.外模式 B.内模式 C.存储模式 D.模式 答案:D

20据库系统的数据独立性是指 。

A.不会因为数据的变化而影响应用程序 B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序

C.不会因为存储策略的变化而影响存储结构 D.不会因为某些存储结构的变化而影响其他的存储结构 答案:B

21.信息世界中的术语,与之对应的数据库术语为 。

A.文件 B.数据库 C.字段 D.记录 答案:D 22次型、网状型和关系型数据库划分原则是 。

A.记录长度 B.文件的大小 C.联系的复杂程度 D.数据之间的联系 答案:D

23.传统的数据模型分类,数据库系统可以分为三种类型 。

A.大型、中型和小型 B.西文、中文和兼容 C.层次、网状和关系 D.数据、图形和多媒体 答案:C

24. 层次模型不能直接表示 。

A. 1 :1关系 B.1 :m关系 C. m :n关系 D.1 :1和1 :m关系 答案:C

25. 数据库技术的奠基人之一E.F.Codd从1970年起发表过多篇论文,主要论述的是 。

A.层次数据模型 B.网状数据模型 C.关系数据模型 D.面向对象数据模型 答案:C 二、填空题

1. 数据管理技术经历了 ① 、 ② 和 ③ 三个阶段。 答案:①人工管理 ②文件系统 ②数据库系统

2. 数据库是长期存储在计算机内、有 ① 的、可 ② 的数据集合。 答案:①组织 ②共享

3.DBMS是指 ① 它是位于 ② 和 ③ 之间的一层管理软件。 答案:①数据库管理系统 ②用户 ③操作系统

4. 数据库管理系统的主要功能有 ① 、 ② 、数据库的运行管理和数据库的建立以及维护等4个方面。

答案:①数据定义功能 ②数据操纵功能

5. 数据独立性又可分为 ① 和 ② 。 答案:①逻辑数据独立性 ②物理数据独立性

6. 当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的 。 答案:物理独立性

7. 数据模型是由 ① 、 ② 和 ③ 三部分组成的。 答案:①数据结构 ②数据操作 ③完整性约束

8. ① 是对数据系统的静态特性的描述, ② 是对数据库系统的动态特性的描述。 答案:①数据结构 ②数据操作

9. 数据库体系结构按照 ① 、 ② 和 ③ 三级结构进行组织。 答案:①模式 ②外模式 ③内模式

10. 实体之间的联系可抽象为三类,它们是 ① 、 ② 和 ③ 。 答案:①1∶1 ②1∶m ②m∶n

11.数据冗余可能导致的问题有 ① 和 ② 。 答案:①浪费存储空间及修改麻烦 ②潜在的数据不一致性 三:简答题: 1. 什么是数据库?

答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。

2. 什么是数据库的数据独立性?

答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。

逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性。当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。 物理数据独立性是指数据的存储结构与存取方法(内视图)改变时,对数据库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立。 3. 什么是数据库管理系统?

答:数据库管理系统(DBMS)是操纵和管理数据库的一组软件,它是数据库系统(DBS)的重要组成部分。不同的数据库系统都配有各自的DBMS,而不同的DBMS各支持一种数据库模型,虽然它们的功能强弱不同,但大多数DBMS的构成相同,功能相似。

一般说来,DBMS具有定义、建立、维护和使用数据库的功能,它通常由三部分构成:数据描述语言及其翻译程序、数据操纵语言及其处理程序和数据库管理的例行程序。 4. 什么是数据字典?数据字典包含哪些基本内容?

答:数据字典是数据库系统中各种描述信息和控制信息的集合,它是数据库设计与管理的有力工具,是进行详细数据收集和数据分析所获得的主要成果。数据字典的基本内容有:数据项、数据结构、数据流、数据存储和处理过程5个部分。

第一章补充作业部分:

假设教学管理规定:

①一个学生可选修多门课,一门课有若干学生选修; ②一个教师可讲授多门课,一门课只有一个教师讲授; ③一个学生选修一门课,仅有一个成绩。

学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。 要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型; 解答: 学号 学生 课程号 m n 课程名 姓名 选修 课程 n 成绩 讲授 1 教师 教师编号 教师姓名 第2章关系数据库

一、选择题

1、关系数据库管理系统应能实现的专门关系运算包括 。

A.排序、索引、统计 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表 答案:B

2、关系模型中,一个关键字是 。 A.可由多个任意属性组成 B.至多由一个属性组成

C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成 D.以上都不是 答案:C

3、自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 。

A.元组 B.行 C.记录 D.属性 答案:D 4、关系运算中花费时间可能最长的运算是 。

A.投影 B.选择 C.笛卡尔积 D.除 答案:C 5.关系模式的任何属性 。

A.不可再分 B.可再分 C.命名在该关系模式中可以不惟一 D.以上都不是 答案:A

6.在关系代数运算中,五种基本运算为 。

A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影

C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 答案:C 7、设有关系R,按条件f对关系R进行选择,正确的是 。 A.R?R B.R ?? R C. ?f(R) D.?f(R)

F 答案:C 8、如图所示,两个关系R1和R2,它们进行 运算后得到R3。

R2

R1

D A A C D B 1 2 1 C X Y y R3

A A C C

A.交 B.并 C.笛卡尔积 D.连接 答案:D 二、填空题

1、一个关系模式的定义格式为 。 答案:关系名(属性名1,属性名2,?,属性名n)

2、.一个关系模式的定义主要包括 ① 、 ② 、 ③ 、

④ 和 ⑤ 。 答案:①关系名 ②属性名 ③属性类型 ④属性长度 ⑤关键字

3、.关系代数运算中,传统的集合运算有 ① 、 ② 、 ③ 和 ④ 。 答案:①笛卡尔积 ②并 ③交 ④差

4、关系代数运算中,基本的运算是 ① 、 ② 、 ③ 、 ④ 和 ⑤ 。 答案:①并 ②差 ③笛卡尔积 ④投影 ⑤选择 5、关系代数运算中,专门的关系运算有 ① 、 ② 和 ③ 。 答案:①选择 ②投影 ③连接

6、关系数据库中基于数学上两类运算是 ① 和 ② 。答案:①关系代数 ②关系

B 1 1 2 C X Y y D M M N E I I J 1 2 5 E M N M M I J K

演算

7、.已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主关键字是 ① ,系关系的外关键字 ② ,学生关系的主关键字是 ③ ,外关键字 ④ 答案:①系编号 ②无 ③学号 ④系编号 三、应用题:

设有如下所示的关系S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句:

(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。 (2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。

(3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。 (4)检索”李强”同学不学课程的课程号(C#)。 (5)检索至少选修两门课程的学生学号(S#)。

(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 (7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。 (8)检索选修课程号为k1和k5的学生学号(S#)。 (9)检索选修全部课程的学生姓名(SNAME)。

(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。 (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。 解:本题各个查询语句对应的关系代数表达式表示如下:

(1). ∏C#,CNAME(σTEACHER=‘程军’(C)) (2). ∏S#,SNAME(σAGE>21∧SEX=”男”(C))

(3). ∏SNAME{s?? [∏S#,C#(sc)÷∏C#(σTEACHER=‘程军’(C))]} (4). ∏C#(C)- ∏C#(σSNAME=‘李强’(S) ?? SC) (5). ∏S#(σ[1]=[4]∧[2]≠[5] (SC × SC))

(6). ∏C#,CNAME(C?? (∏S#,C#(sc)÷∏S#(S))) (7). ∏S#(SC?? ∏C#(σTEACHER=‘程军’(C)))

(8). ∏S#,C#(sc)÷∏C#(σC#=’k1’∨ C#=’k5’(C)) (9). ∏SNAME{s?? [∏S#,C#(sc)÷∏C#(C)]} (10). ∏S#,C#(sc)÷∏C#(σS#=’2’(SC))

(11). ∏S#,SNAME{s?? [∏S#(SC?? σCNAME=‘C语言’(C))]} 关系R和S如下图所示,试计算R÷S。

R A B C D

a a a b b c c b b b d d k k c e h e d c e d f k f l d f 第3章关系数据库标准语言SQL

S C c e D d f 一、选择题

1、SQL语言是 的语言,易学习。

A.过程化 B.非过程化 C.格式化 D.导航式 答案:B 2、SQL语言是 语言。

A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库 答案:C 3、SQL语言具有 的功能。

A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制

C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 答案:B 4、SQL语言具有两种使用方式,分别称为交互式SQL和 。

A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL 答案:C

5、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。

要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系 。 A.S B.SC,C C.S,SC D.S,C,SC 答案:D

6、如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL操作 不能执行。

A.从职工表中删除行(‘025’,‘王芳’,‘03’,720) B.将行(‘005,’,‘乔兴’,‘04’,750)插入到职工表中

C.将职工号为,‘001’的工资改为700 D.将职工号为,’038’的部门号改为‘03’ 答案:B

7、若用如下的SQL语句创建一个student表: CREATE TABLE student(NO C(4) NOT NULL, NAME C(8) NOT NULL, SEX C(2), AGE N(2))

可以插入到student表中的是 。

A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL)

C.(NULL,‘曾华’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 答案:B

第8到第11题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE)

其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。

8、检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是 。 A.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=“王华”) B.SELECT SN,AGE,SEX FROM S

WHERE SN=“王华” 答案:A

9、检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是 。 A.SELECT S# FORM SC WHERE C#=“C2” AND GRAD>=

(SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC

WHERE C#=“C2” AND GRADE IN (SELECT GRADE FORM SC WHERE C#=“C2”)

答案:D

10、检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT语句是 。 A.SELECT S.SN,SC.C#,SC.GRADE FROM S

WHERE S.S#=SC.S#

B.SELECT S.SN,SC.C#,SC.GRADE FROM SC

WHERE S.S#=SC.GRADE C.SELECT S# FORM SC

WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC

WHERE C#=“C2” AND GRADE>=ALL (SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT SN,AGE,SEX FROM S

WHERE AGE>(SELECT AGE

WHERE SN=“王华”)

D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE

C.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC

WHERE S.S#=SC.S# 答案:C

D.SELECT S.SN,SC.C#,SC.GRADE FROM S.SC

11、检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是 。

A.SELECT S#,SUM(GRADE)FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC

HAVING COUNT(*)>=4 WHERE C#=“C2” AND GRADE>=

(SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC

WHERE C#=“C2” AND GRADE IN 答案:D

二、填空题

1、SQL是 。 答案:结构化查询语言

2、视图是一个虚表,它是从 ① 中导出的表。在数据库中,只存放视图的 ② ,不存放视图的 ③ 。 答案:①一个或几个基本表 ②定义 ③视图对应的数据 3、设有如下关系表R:

R(No,NAME,SEX,AGE,CLASS) 主关键字是NO

其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。 写出实现下列功能的SQL语句。

①插入一个记录(25,“李明”,“男”,21,“95031”); 。 ②插入“95031”班学号为30、姓名为“郑和”的学生记录; 。 ③将学号为10的学生姓名改为“王华”; 。 ④将所有“95101”班号改为“95091”; 。 ⑤删除学号为20的学生记录; 。 ⑥删除姓“王”的学生记录; 。

(SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT S# FORM SC

WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC

WHERE C#=“C2” AND GRADE>=ALL (SELECT GRADE FORM SC WHERE C#=“C2”

答案:

①INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”)

②INSERT INTO R(NO,NAME,CLASS) VALUES(30,“郑和”,“95031”) ③UPDATE R SET NAME=“王华”WHERE NO=10

④UPDATE R SET CLASS=“95091”WHERE CLASS=“95101” ⑤DELETE FROM R WHERE NO=20

⑥DELETE FROMR WHERE NAME LIKE“王%”

第3章书面作业

1、设学生课程数据库中有三个关系:

学生关系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,AGE 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#

) 2、设学生-课程数据库中包括三个表:

学生表:Student (Sno,Sname,Sex,Sage,Sdept) 课程表:Course(Cno,Cname,Ccredit) 学生选课表:SC(Sno,Cno,Grade)

)

(6) SELECT SNAME FROM S,SC WHERE S.S#=SC.S# GROUP BY SNAME

HAVING COUNT(*)>3

其中Sno、Sname、Sex、Sage、Sdept、 Cno、Cname、Ccredit 、Grade分别表示学号、姓名、性别、年龄、所在系名、课程号、课程名、学分和成绩。 试用SQL语言完成下列项操作:

(1)查询选修课程包括“1042”号学生所学的课程的学生学号

(2)创建一个计科系学生信息视图S_CS_VIEW,包括Sno学号、Sname姓名、Sex性别; (3)通过上面第2题创建的视图修改数据,把王平的名字改为王慧平

(4)创建一选修数据库课程信息的视图,视图名称为datascore_view,包含学号、姓名、成绩。 答案:(1) SELECT DISTINCT SNO FROM SC SCX WHERE NOT EXISTS (SELECT * FROM SC SCY

WHERE SCY.SNO = ' 1042'

AND

NOT EXISTS (SELECT * FROM SC SCZ WHERE

SCZ.SNO=SCX.SNO AND

SCZ.CNO=SCY.CNO));

(2) CREATE VIEW S_CS_VIEW AS

SELECT SNO,SNAME,SEX FROM STUDENT WHERE Sdept=’CS’ (3)UPDATE S_CS_VIEW SET SNAME=’ 王慧平’ WHERE SNAME=’ 王平’ (4) CREATE VIEW datascore_view AS

SELECT SNO 学号、SNAME 姓名、

GRADE 成绩

FROM STUDENT,SC,COURSE WHERE STUDENT.SNO=SC.SNO AND COURSE.CNO=SC.CNO AND CNAME=’ 数据库’

第4章数据库的安全性

一、选择题

1、下面哪个不是数据库系统必须提供的数据控制功能 。

A.安全性 答案:B

2、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。这是指数据的 。

A.安全性 答案:A

3、数据库的 是指数据的正确性和相容性。

A.安全性 答案:B

4、在数据系统中,对存取权限的定义称为 。

A.命令 答案:B

5、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的 。

A.可靠性 答案:D

6、下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)

的修改权”这一功能的是

A.REVOKE UPDATE(XH) ON TABLE FROM ZHAO B.REVOKE UPDATE(XH) ON TABLE FROM PUBLIC

C.REVOKE UPDATE(XH) ON STUD FROM ZHAO D.REVOKE UPDATE(XH) ON STUD FROM PUBLIC 答案:C

7、把对关系SC的属性GRADE的修改权授予用户ZHAO的SQL语句是

A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAO

C)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO 答案:C

B.一致性

C.完整性

D

B.授权

C.定义

D.审计

B.完整性

C.并发控制

D

B.完整性

C.并发控制

D

B.可移植性

C.完整性

D.并发控制

8、在SQL Server 中删除触发器用( )。

A.ROLLBACK B. DROP C.DELALLOCATE D. DELETE 答案:B 二、填空题

1、保护数据安全性的一般方法是 。 答案:设置用户标识和存取权限控制

2、安全性控制的一般方法有①、②、③、④和视图的保护五级安全措施。答案:①用户标识鉴定

②存取控制 ③审计 ④数据加密

3、存取权限包括两方面的内容,一个是 ① ,另一个是 ②。 答案:①要存取的数据对象

②对此数据对象进行操作的类型

4、在数据库系统中对存取权限的定义称为 。 答案:授权 5、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用 ① 语句,收回所授的权限使用 ② 语句。 答案:①GRANT ②REVOKE

6、DBMS存取控制机制主要包括两部分:自主存取控制,________________。 答案:强制存取控制

7、 当对某一表进行诸如( )、 ( )、 ( ) 这些操作时,SQL Server 就会自动执行触发器所定义的SQL 语句。

答案:INSERT,DELETE,UPDATE

第5章数据库完整性

一、选择题:

1、在数据库系统中,保证数据及语义正确和有效的功能是 ( )

A.并发控制 B.存取控制 C.安全控制 D.完整性控制 答案:D

2、关于主键约束以下说法错误的是( )

A. 一个表中只能设置一个主键约束 B.允许空值的字段上不能定义主键约束 C.允许空值的字段上可以定义主键约束 D.、可以将包含多个字段的字段组合设置为主键 答案:C

3、在表或视图上执行除了( )以外的语句都可以激活触发器。 A.Insert

B. Delete

C. Update

D.

Create

答案:D

4、数据库的____是指数据的正确性和相容性。

A.安全性 B.完整性 C.并发控制 D.恢复 答案:B

5、在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的________约束。

A、实体完整性B、参照完整性C、用户自定义D、用户操作 答案:C 二、填空题

1.数据库的完整性是指数据的 ① . ②__和 ③ 。答案:①实体完整性 ②参照完整性 ③用户定义完整性

2、实体完整性是指在基本表中, 。 答案:主属性不能取空值

3、参照完整性是指在基本表中, 。 答案:外码可以是空值或者另一个关系主码的有效值

4、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就 。答案:拒绝此操作

三、设计题

在学生课程管理数据库中创建一触发器,当向学生选课表插入记录时,检查该记录的学号在学生表中是否存在,检查该记录的课程号在课程表中是否存在,及选课成绩是否在0到100范围,若有一项为否,则不允许插入。

答案:

create trigger stu_ins_tri on sc for insert as begin

declare @s# char(6),@c# char(5),@grade int select @s#=sno,@c#=cno,@grade=score from inserted

if (@s# not in(select sno from student)) or (@c# not in (select cno from course) )or (@grade not between 0 and 100)

rollback transaction else

print '成功插入' end

第6章关系数据理论

一、选择题

1、关系规范化中的删除操作异常是指 ① ,插入操作异常是指 ② 。

A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入 答案:①A ②D

2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是 。 A.关系规范化理论 B.关系运算理论 C.关系代数理论 D.数理逻辑 答案:A

3、规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及 的缺陷。

A.数据的不一致性 B.结构不合理 C.冗余度大 D.数据丢失 答案:C

4、当关系模式R(A,B)已属于3NF,下列说法中 是正确的。

A.它一定消除了插入和删除异常 B.仍存在一定的插入和删除异常 C.一定属于BCNF D.A和C都是 答案:B 5、关系模型中的关系模式至少是 。

A.1NF B.2NF C.3NF D.BCNF 答案:A

6、在关系DB中,任何二元关系模式的最高范式必定是 。

A.1NF B.2NF C.3NF D.BCNF 答案:D

7、在关系模式R中,若其函数依赖集中所有候选关键字都是决定因素,则R最

高范式是 。

A.2NF B.3NF C.4NF D.BCNF 答案:C

8、候选关键字中的属性称为 。

A.非主属性 B.主属性 C.复合属性 D.关键属性 答案:B

9、消除了部分函数依赖的1NF的关系模式,必定是 。

A.1NF B.2NF C.3NF D.4NF 答案:B

10、关系模式的候选关键字可以有 ① ,主关键字有 ② 。

A.0个 B.1个 C.1个或多个 D.多个 答案:①C ②B

11、关系模式的分解 。 A答案:B

12、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门”关系中,因哪个属性而使它不满足第一范式? 。 部门(部门号,部门名,部门成员,部门总经理)

A.部门总经理 B.部门成员 C.部门名 D.部门号 答案:B

二、填空题

1、在关系A(S,SN,D)和B(D,CN,NM中,A的主键是S,B的主键是D,则D在S中称为 。答案:外部键

2、对于非规范化的模式,经过 ① 转变为1NF,将1NF经过 ② 转变为2NF,将2NF经过 ③ 转变为3NF。

答案:①使属性域变为简单域 ②消除非主属性对主关键字的部分依赖③消除非主属性对主关键字的传递依赖

3、在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和 。 答案:无损连接性

三、概念解释:

B

1、平凡的函数依赖

在关系模式R(U)中,对于U的子集X和Y,

如果X→Y,但Y ? X,则称X→Y是非平凡的函数依赖 2、非平凡的函数依赖

在关系模式R(U)中,对于U的子集X和Y, 若X→Y,但Y ? X, 则称X→Y是平凡的函数依赖 四、综合练习 1、已知学生关系模式

S(Sno,Sname,SD,Sdname,Course,Grade)

其中:Sno学号、Sname姓名、SD系名、Sdname系主任名、Course课程、Grade成绩。

(1)写出关系模式S的基本函数依赖和主码。

(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么? (3)将关系模式分解成3NF,并说明为什么? (1)写出关系模式S的基本函数依赖和主码。 答: 关系模式S的基本函数依赖如下:

Sno→Sname,SD→Sdname,Sno→SD,(Sno,Course) →Grade 关系模式S的码为:(Sno,Course)。

(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么? 答: 原关系模式S是属于1NF的,码为(Sno,Course),非主属性中的成绩完全依赖于码,而其它非主属性对码的函数依赖为部分函数依赖,所以不属于2NF。

消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下: S1(Sno,Sname,SD,Sdname) S2(Sno,Course,Grade)

(3)将关系模式分解成3NF,并说明为什么? 答: 将上述关系模式分解成3NF如下:

关系模式S1中存在Sno→SD,SD→Sdname,即非主属性Sdname传递依赖

于Sno,所以S1不是3NF。进一步分解如下: S11(Sno,Sname,SD) S12(SD,Sdname)

分解后的关系模式S11、S12满足3NF。

对关系模式S2不存在非主属性对码的传递依赖,故属于3NF。所以,原

模式S(Sno,Sname,SD,Sdname,Course,Grade)按如下分解满足3NF。 S11(Sno,Sname,SD) S12(SD,Sdname)

S2(Sno,Course,Grade) 2、设有如下关系R

(1)它为第几范式? 为什么?

(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的? (3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题? (1)它为第几范式? 为什么?

解:它是2NF。 因为R的候选关键字为“课程名”。 依赖关系: 课程名→教师名,教师名 → 课程名,教师名→教师地址,所以 课程名→教师地址。即存在非主属性“教师地址”对候选关键字课程名的传递函数,因此R不是3NF。但:因为不存在非主属性对候选关键字的部分函数依赖,所以R是2NF。

(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的? 解: 存在。当删除某门课程时会删除不该删除的教师的有关信息。 (3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题?

解: 分解为高一级范式如图所示。

R1如下: R2如下:

分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。

3、设某商业集团数据库中有一关系模式R如下: R (商店编号,商品编号,数量,部门编号,负责人)

如果规定:(1) 每个商店的每种商品只在一个部门销售;(2) 每个商店的每个部门只有一个负责人;(3) 每个商店的每种商品只有一个库存数量。 试回答下列问题:(1) 根据上述规定,写出关系模式R的基本函数依赖; 答: 关系模式S的基本函数依赖如下: (商店编号,商品编号) →部门编号,(商店编号,部门编号)→负责人,(商店编号,商品编号) →数量

(2) 找出关系模式R的候选码;答:关系模式R的码为:(商店编号,商品编号, 部门编号)。

(3) 试问关系模式R最高已经达到第几范式?为什么?答: 原关系模式R是属于1NF的,码为(商店编号,商品编号, 部门编号),非主属性对码的函数依赖全为部分函数依赖,所以不属于2NF。

消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下:

R1(商店编号,商品编号, 部门编号, 数量) R2(商店编号,部门编号, 负责人)

(4) 如果R不属于3NF,请将R分解成3NF模式集。 答:将R分解为

R1(商店编号,商品编号, 部门编号, 数量) R2(商店编号,部门编号, 负责人)

分解后的R不存在传递的函数依赖,所以分解后的R已经是第3NF

第7章数据库设计

一、选择题

1、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的 阶段。

A.需求分析 答案:B

2、在关系数据库设计中,设计关系模式是 的任务。

A.需求分析阶段

B.概念设计阶段

C.逻辑设计阶段

B.概念设计

C.逻辑设计

D.物理设计

D.物理设计阶段 答案:C

3、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是 。

A.建立库结构 答案:B

4、在数据库的概念设计中,最常用的数据模型是 。

A.形象模型

B.物理模型

C.逻辑模型

D.实体联系模

B.扩充功能

C.加载数据

D.系统调试

型 答案:D

5、从E-R模型关系向关系模型转换时,一个M∶N联系转换为关系模型时,该关系模式的关键字是 。

A.M端实体的关键字 B.N端实体的关键字 C.M端实体关键字与N端实体关键字组合

D.重新选取其他属性 答案:C

6、当局部E-R图合并成全局E-R图时可能出现冲突,不属于合并冲突的是 。

A.属性冲突 答案:B

7、概念模型独立于 。

A.E-R模型

B.硬件设备和DBMS

C.操作系统和DBMS

B.语法冲突

C.结构冲突

D.命名冲突

D.DBMS 答案:B

8、数据流程图(DFD)是用于描述结构化方法中 阶段的工具。

A.可行性分析 答案:C

9、下图所示的E-R图转换成关系模型,可以转换为 关系模式。

B.详细设计

C.需求分析

D.程序编码

A.1个 答案:C 借书证号 B.2个 C.3个 D.4个

借阅日期 位置 价格 图书 作者 分类号 书名 借书人 m 单位 借阅 n 总编号 姓名 二、填空题 1

是 。

答案:需求分析,概念设计,逻辑设计,物理设计,系统实施,系统运行和维护

2、“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库 设计阶段。

答案:物理

3、在数据库设计中,把数据需求写成文档,它是各类数据描述的集合,包括数据项、数据结构、数据流、数据存储和数据加工过程等的描述,通常称为 。

答案:数据字典

4、在设计分E-R图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计的,所以各个分E-R图之间难免有不一致的地方,这些冲突主要有 ① 、 ② 和 ③ 三类。

答案:①属性冲突 三、应用题

设有如下实体:学生:学号、单位、姓名、性别、年龄、选修课程名 课程:编号、课程名、开课单位、任课教师号 教师:教师号、姓名、性别、职称、讲授课程编号 单位:单位名称、电话、教师号、教师名

上述实体中存在如下联系:

(1).一个学生可选修多门课程,一门课程可为多个学生选修;(2).一个教师可讲授多门课程,一门课程可为多个教师讲授;(3).一个单位可有多个教

②命名冲突

③结构冲突

师,一个教师只能属于一个单位。

试完成如下工作:(1).分别设计学生选课和教师任课两个局部信息的结构E-R图。(2).将上述设计完成的E-R图合并成一个全局E-R图。(3).将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。 解:(1).学生选课、教师任课局部E-R图如下所示。

单位名 属于 教师 教师号 姓名 性别 年龄 学号 姓名 性别 单位名 单位 1 1 拥有 开课 m m 学生 m 年龄 选修 n 课程 教师号 编号 课程名 学生选课局部E-R图

m m 讲授 n 课程 编号 1 单位电话 (2).合并后的全局E-R图如下所示。

1 单位 教师授课局部E-R图

1 属于 m 教师 1 m 拥有 开课 讲授

全局E-R图

为避免图形复杂,下面给出各实体属性:

单位:单位名、电话

学生:学号、姓名、性别、年龄 教师:教师号、姓名、性别、职称 课程:编号、课程号

(3).该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下:

单位(单位名,电话)

教师(教师号,姓名,性别,职称,单位名) 课程(课程编号,课程名,单位名) 学生(学号,姓名,性别,年龄,单位名) 讲授(教师号,课程编号) 选修(学号,课程编号) 四、简答题

数据库设计一般分为哪几个阶段,每个阶段的主要任务是什么?

解答:(1)数据库设计分为6个阶段:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护。

(2)各阶段任务如下:①需求分析:准确了解与分析用户需求(包括数据

与处理)。②概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体 DBMS 的概念模型。③逻辑结构设计:将概念结构转换为某个 DBMS 所支持的数据模型,并对其进行优化。④数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。⑤数据库实施:设计人员运用 DBMS 提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 ⑥数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。

一、判断题

1.关系中行列的顺序无关。( )

2.E-R图可以表示多个实体集之间联系。( ) 3.模式是数据库局部逻辑结构。( ) 4.信息世界的主要对象是关系。

5.若事务T对数据对象A加上X锁,则只允许T修改A,其它任何事务都不能再对A加任何类型的锁。( )

6.两段锁协议不能防止丢失修改和读“脏”数据。( ) 7.SQL语言的一次查询结果是全部数据项。( ) 8.关系R中有x,y,z?U且满足x→y,y→z,则称z是传递函数依赖于x。( ) 9.数据库由系统统一管理和集中控制,因此消除了数据冗余。( ) 10.子模式是模式的子集,各子模式间允许相互重叠。( ) 二、单项选择题

11.数据库中只存放视图的

A.定义 B.对应的数据 C.操作 D.限制

12.应用数据库的主要目的是为了

A.解决保密问题 B.解决数据完整性问题 C.共享数据问题 D.解决数据量大问题

13.在数据库技术中,独立于计算机系统的模型是

A.E-R模型 B.层次模型 C.关系模型 D.面向对象的模型

14.取出关系中的某些列,并消去重复的元组的关系运算称为

A.取列运算 B.投影运算 C.联结运算 D.选择运算 15.对关系模型叙述错误的是

A.建立在严格的数学理论、集合论和谓词演算公式的基础上 B.微机DBMS绝大部分采用关系数据模型 C.用二维表表示关系模型是其一大特点

D.不具有连接操作的DBMS也可以是关系数据库系统 16.SQL语言是 的语言,易学习。

A.过程化 B.格式化 C.非过程化 D.导航式

17.SQL基本表的创建中是通过 实现参照完整性规则的。

A.主键子句 B.外键子句 C.检查子句 D.NOT NULL

18.设计性能较优的关系模式称为规范化,规范化的主要理论依据是

A.关系规范化理论 B.关系运算理论 C.代数运算理论 D.数理逻辑理论

19.关系模式中的属性全部是主属性,则R的最高范式必定是

A.2NF B.3NF C.BCNF D.4NF

20.系统死锁属于

A.事务故障 B.程序故障 C.系统故障 D.介质故障

21.假如采用关系数据库系统来实现应用,在数据库设计的 阶段,需要将E-R模型转换为关系数据模型。

A.概念设计 B.物理设计 C.运行阶段 D.逻辑设计 22.数据库镜像可以用于

A.保证数据库的完整性 B.实现数据库的安全性 C.进行数据库恢复或并发操作 D.实现数据共享

23.数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和

A.数据库管理系统 B.数据库应用系统 C.相关的计算机系统 D.各类相关人员

24.若关系中的某一属性组的值能唯一标识一个元组,则称该属性组为

A.主码 B.候选码 C.主属性 D.外码

25.在R(U)中,如果X→Y,并且对于X的任何一个真子集X ',都没有X '→Y,则

A.Y对X完全函数依赖 B.Y函数依赖于X C.X为U的候选码 D.R属于2NF 三.名词解释

26.函数依赖 27.BCNF 28.事务 29.DBMS 30.视图

四、操作表达

已知有一个关系数据库的模式如下:

STUDENT(SNO,SNAME,SEX,CLASS)

TEACHER(TNO,TNAME,SEX,BIRTHDAY,PROF,DEPART) COURSE(CNO,CNAME,TNO) SCORE(SNO,CNO,DEGREE) 其中:

STUDENT代表学生,它的各属性依次表示学号,姓名,性别,班级;

TEACHER代表教师,它的各属性依次表示教师号,姓名,性别,出生日期,职称,所在系;

COURSE代表课程,它的各属性依次表示课程号,课程名,授课教师号; SCORE代表选课,它的各属性依次表示学号,课程号,成绩。 请用关系代数 、SQL语言表达如下查询:

31.列出“99031”和“99032”班全体学生的记录。 32.列出“计算机”系教师所教课程的成绩表。 33.显示“张华”教师任课的学生成绩 请用SQL语言表达如下查询:

34.显示“99031”班学生的人数。

35.显示SCORE表中至少5名学生选修的并以3开头的课程号的平均分数。 五、求解题

设有关系模式R(A,B,C,D,E,F),R的函数依赖集:F={AB→C,C→D,A→F,D→E,D→F},R的一个分解ρ={ABC,CD,DEF}。 36.求R的候选关键字。

37.判断ρ是否具有无损连接性和函数依赖保持性,说明理由。 六、综合应用题

假定一个部门的数据库包括以下的信息:

(1)职工的信息:职工号、姓名、住址和所在部门。 (2)部门的信息:部门所有职工、经理和销售的产品。

(3)产品的信息:产品名、制造商、价格、型号及产品内部编号。 (4)制造商的信息:制造商名称、地址、生产的产品名和价格。 38.试画出这个数据库的E-R图。 39.将E-R图转换成关系模型。 答案: 一、判断题

(1~5) √√××√ (6~10)√×××√ 二、单项选择题

(11~15)ACABD (16~20)CBABC (21~25)DCDBA

三、名词解释

26.函数依赖:设R(U)是属性集U上的关系模式。X,Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作X→Y。 27.BCNF:设关系模式R∈1NF,如果对于R的每个函数依赖X→Y,若Y不属于X,则X必含有候选码,那么R∈BCNF。 28.事务:所谓事务是用户定义的一个操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。

29.DBMS:database management system,数据库管理系统是数据库系统核心软件,在操作系统的支持下工作,解决如何科学地组织和储存数据,如何高效的获取和维护数据的系统软件。其主要功能包括数据定义功能、数据操纵功能、数据库的运行管理和数据库的建立与维护。

30.视图:视图是从基本表或其他视图中导出的表,它本身不独立存储在数据库中,也就是说数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中,因此视图是一个虚表。 四、操作表达

31.σCLASS='99031'∨CLASS ='99032' (STUDENT);

SELECT * FROM STUDENT WHERE CLASS ='99031' OR CLASS ='99032'; 32.ΠSNO,CNO,GRADEσDEPART ='计算机' (TEACHER ?COURSE? SCORE);

SELECT * FROM SCORE WHERE CNO IN (SELECT CNO FROM COURSE Where TNO IN(SELECT TNO FROM TEACHER WHERE DEPART=’CS’)); 33.ΠSNO,CNO,GRADEσSNAME ='张华' (TEACHER ?COURSE? SCORE);

本文来源:https://www.bwwdw.com/article/sbq3.html

Top