《数据库原理与技术复习题及答案.docx》由会员分享,可在线阅读,更多相关《数据库原理与技术复习题及答案.docx(20页珍藏版)》请在三一办公上搜索。
1、数据库原理与技术复习题及答案中南大学现代远程教育课程考试复习题及参考答案 数据库原理与技术 一、填空 1关系代数运算中,运算对象为两个关系的运算有并、_、_、_、_等。运算对象为一个的有_、_等。 2常用的关系运算是_与_。 3SQL的标准库函数有_、_、_等,其中不允许直接出现在查询Where子句中的有_、_。 4、数据库具有数据结构化、_与_等特点。 5、数据模型包括数据结构、_与_。 6.数据库系统包括计算机硬件、_、_、_等 7.数据库的数据控制功能包括安全性、_、_等控制功能。 8.目前主要的关系数据库管理系统有ORACLE、_、_、_等,用于数据库应用系统的开发工具主要有VB、_、
2、_等。 9数据库设计主要包括需求分析、_、_、_、运行维护等步骤。 10数据库系统主要包括关系、_、_等类型的系统。 二、选择题:选取最满意的一个答案任何由三个属性组成的关系可能是 (A) 1NF (B) 2NF (C) 3NF (D) 不能判定 2.数据冗余引起的问题主要是花费 (A) 时间 (B) 空间 (C) 时间与空间 (D) 时间或空间 3R是个三元关系,X,Y,Z是单属性且X是码,则R一定是 (A) 1NF (B) 2NF (C) 3NF (D) BCNF 4在数据库中,存储冗余数据是( ) (A)不应该的 (B) 应该且合理的 (C) 合理的但不能过度冗余 (D)视情况而定 5在
3、关系运算中,进行自然联接运算的两个关系 (A) 必有相同的列名 (B)必有相同的关键字 (C)没有要求 (D)必有类型相同的列 6在数据库系统中,DBMS与DB的关系是 (A) DBMS包括DB (B) DB包括DBMS (C)不一定的 (D) 同级关系 1 7、在SQL的查询语句的WHERE子句中,下列哪个不能出现 (A) sum (B) != (C) (D) 找出成品库II的仓库号、面积、货位数。 b 找出零件名为“110110011”的零件名、计量单位及所在仓库号、库存数量、保管员 (4) 试用SQL表示查询: 找出110110011号零件的所在的仓库号,仓库名,货位数。 (5) 删除价
4、格为空值的库存记录。 (6) 建立视图表示关系 2.现有如下E-R图: 实体的主要属性如下,其中下划线部分为主码: 部门 职工 部门 1 有 n 职工 (1) 试用SQL表示上述E-R图所有的实体及联系,其中实体只需表示列出的主要属性,要求反映主码与联系,其中电话以0731-开头,年龄=18,工资+津贴=5000,各字段的类型长度可以根据需要自己确定。 (2) 在上述定义的每个表中输入一个有代表性的记录,体现相互间的联系。 (3) 用SQL与关系代数表示 5 找出职工 王晓芳的职工号与年龄、性别 找出售后服务部的电话与职工号、姓名 (4) 试用SQL表示查询: 找出平均工资大于3000的部门编
5、号与名称、电话。 (5) 删除名称为空值的部门。 (6) 建立视图表示关系 六、编程题 1.编写程序,并写出程序运行产生的最后一个结果 用PL/SQL编写程序,表示产生以i6081开头的第8位固定为3的6、7位不超过36的多个学号。 2、程序填空 以下程序表示产生以湘A-D88开头的尾数不为4的共4个数字的牌号,请将程序中的空格补充完整(其中的数字与只是作为第几空说明,不作程序) DECLARE car_code := 1; BEGIN while car_code 99 LOOP If car_code 10 and (2_) then INSERT INTO temp_table (sno
6、) select 湘A-D880|to_char(car_code) from dual; Else if (3_) then INSERT INTO temp_table (sno) Select 湘A-D88|to_char(car_code) from dual; (4_) car_code := car_code + 1; end loop; END; 程序运行完成后,一共产生了(5_)个牌号。 参考答案 6 一、填空 1关系代数运算中,运算对象为两个关系的运算有并、_交_、_差_、_除_、_联接_等。运算对象为一个的有_、_等。 2常用的关系运算是_关系代数_与_关系演算_。 3SQ
7、L的标准库函数有_SUM_、_AVG_、_MAX_等,其中不允许直接出现在查询Where子句中的有_SUM_、_AVG_。 4、数据库具有数据结构化、_冗余小_与_易扩充_等特点。 5、数据模型包括数据结构、_数据操作_与_完整性约束条件_。 6.数据库系统包括计算机硬件、_数据库管理系统等软件,数据库,DBA等人员_等 7.数据库的数据控制功能包括安全性、_完整性,并发_等控制功能。 8.目前主要的关系数据库管理系统有ORACLE、_ SQL Server,Sybase,DB2(foxpro,access,my SQL), _等,用于数据库应用系统的开发工具主要有VB、_ PB, Delph
8、i_等。 9数据库设计主要包括需求分析、_概念设计,逻辑设计,物理设计_、运行维护等步骤。 10数据库系统主要包括关系、_层次,网状_等类型的系统。 二、选择题:选取最满意的一个答案 2 任何由三个属性组成的关系可能是 (A) 1NF (B) 2NF (C) 3NF (D) 不能判定 2.数据冗余引起的问题主要是花费 (A) 时间 (B) 空间 (C) 时间与空间 (D) 时间或空间 3R是个三元关系,X,Y,Z是单属性且X是码,则R一定是 (A) 1NF (B) 2NF (C) 3NF (D) BCNF 4在数据库中,存储冗余数据是( C ) (A)不应该的 (B) 应该且合理的 (C) 合
9、理的但不能过度冗余 (D)视情况而定 5在关系运算中,进行自然联接运算的两个关系 (A) 必有相同的列名 (B)必有相同的关键字 (C)没有要求 (D)必有类型相同的列 6在数据库系统中,DBMS与DB的关系是 (A) DBMS包括DB (B) DB包括DBMS (C)不一定的 (D) 同级关系 7、在SQL的查询语句的WHERE子句中,下列哪个不能出现 7 (A) sum (B) != (C) (D) 找出成品库II的仓库号、面积、货位数。 b 找出零件名为“110110011”的零件名、计量单位及所在仓库号、库存数量、保管员 (5) 试用SQL表示查询: 找出110110011号零件的所在
10、的仓库号,仓库名,货位数。 (5) 删除价格为空值的库存记录。 (6) 建立视图表示关系 1解:?处分别填仓库号,零件号 Create table warehouse(wno char(4) primary key, wname varchar2(32), size number(8,2), l_num number(8),eno char(7) references emp(eno),emp_name char(8) Create table part(pno char(9) primary key, pname varchar2(32), p-size varchar2(32), cust
11、_no char(7), p_price number(10,2) check(p_price between 0 and 100000) Create table store(wno char(4) references warehouse.wno, pno char(9) references part.pno, num number(12,2) 在上述定义的每个表中输入一个有代表性的记录,体现相互间的联系。 Insert into warehouse values(1001, 轴承库, 360.50,100, 张三) Insert into part values(101010101,
12、35轴承, 35, 268.65) Insert into store values(1001, 101010101, 30) 用SQL与关系代数表示查询: 11 a 找出成品库II号仓库的仓库号、面积、货位数。 select wno, size, l_num from warehouse where wno=成品库II wno,size_l_num(wname=成品库II(warehouse) ) b 找出零件名为“2# 镙丝”的零件号、计量单位及所在仓库号、库存数量及保管员 select part.pname, cust_no, wno, num,emp_name from part, s
13、tore where part.pno=store.pno and pno=“110110011”; pname, cust_no, wno, num,emp_name (pno=110110011(part) | store ) (4) 试用SQL表示查询: 找出110110011号零件的所在的仓库号,仓库名,货位数。 Select wno, wname, sum(l_num) from warehouse where wno in (select wno from store where pno= 110110011); (5) 删除价格为空值的库存记录。 Delete from stor
14、e where pno in (select pno from part where p_price is null) (6) 建立视图表示关系 create view store_view(仓库号、仓库名、零件号、零件名、计划价格、库存量) as select w.wno, wname, p.pno, pname, p_price ,num from warehouse w,part,store where w.wno=store.wno and part.pno=sore.pno 2.现有如下E-R图: 实体的主要属性如下,其中下划线部分为主码: 部门 职工 部门 1 有 n 职工 (5)
15、 试用SQL表示上述E-R图所有的实体及联系,其中实体只需表示列出的主要属性,要求反映主码与联系,其中电话以0731-开头,年龄=18,12 工资+津贴=18),sex char(2), sal number(10,2),comm. Number(10,2) , dno char(4) references dept (dno), check(sal+comm.)3000 group by dno); 删除名称为空值的部门。 delete from dept where dname is null; 建立视图表示关系 create view dept_emp(部门名称、电话、职工号、姓名、年龄
16、、性别) as select dname,tel,eno,ename,age,sex from emp,dept where emp.dno=dept.dno 六、编程题 1.编写程序,并写出程序运行产生的最后一个结果 用PL/SQL编写程序,表示产生以i6081开头的第8位固定为3的6、7位不超过36的多个学号。 答案 DECLARE v_LC number:= 1; BEGIN while v_LC =36 LOOP INSERT INTO temp_table (sno) Select i6081|to_char(v_LC)|3 from dual; v_LC := v_LC + 1;
17、end loop; END; 最后一个结果是:i6081363。 2、程序填空 以下程序表示产生以湘A-D88开头的尾数不为4的共4个数字的牌号,请将程序中的空格补充完整(其中的数字与只是作为第几空说明,不作程序) DECLARE car_code := 1; BEGIN while car_code 99 LOOP If car_code 10 and (2_) then 14 INSERT INTO temp_table (sno) select 湘A-D880|to_char(car_code) from dual; Else if (3_) then INSERT INTO temp_table (sno) Select 湘A-D88|to_char(car_code) from dual; (4_) car_code := car_code + 1; end loop; END; 程序运行完成后,一共产生了(5_)个牌号。 1. number(4) 2.mod(car_code,10)4 3. mod(car_code,10)4 4.end if; 5.90 15