数据库考试题(数据库简答题!!考试题目!跪求答案!!急!!)
其实数据库考试题的问题并不复杂,但是又很多的朋友都不太了解数据库简答题!!考试题目!跪求答案!!急!!,因此呢,今天小编就来为大家分享数据库考试题的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
IBM认证数据库考试试题
(1)已知表T1中有2行数据,T2中有3行数据,执行SQL语句
“select a.* from T1 a,T2 b”后,返回的行数为______
A、2行
B、3行
C、5行
D、6行
多表查询没有指定连接条件,会导致笛卡尔积的出现,返回行数等于2张表的行数乘积,返回6行记录
考察:对多表连接、笛卡尔积的理解
答案:A
(2)、已知表T1和T2的字段定义完全相同,T1,T2中各有5条不同的数据,其中T1有2条数据存在于表T2中,语句“select* from T1 union select* from T2”
返回的行数为_______
A、8行
B、10行
C、3行
D、12行
第二题? UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。
考察:UNION的理解
答案: A
(3)、已知表T1含有字段ID、CourseID和Score,且数据为
ID CourseID Score
3 1 90
2 1 85
2 2 90
3 2 80
则语句“select id,sum(ScorE) from T1 group by ID”的执行结果为_________
A、 ID sum(ScorE)
—–?———-
3? 170
2? 175
B、 ID sum(ScorE)
—–?———-
2? 175
3? 170
C、 ID sum(ScorE)
—–?———-
2? 170
3? 175
D、 ID sum(ScorE)
—–?———-
3? 175
2 170
第三题 GROUP BY对按照ID字段进行分组,同时对ID相同字段的ScorE进行求和,GROUP by会自动对结果集进行排序所以答案选B
考察:group by的理解
答案: B
(4)、电话号码表t_phonebook中含有100万条数据,其中号码字段PhoneNo上创建了唯一索引,且电话号码全部由数字组成,要统计号码头为321的.电话号码的数量,下面写法执行速度最慢的是_________
A、 select count(*) from t_phonebook where phoneno>=‘321’ and phoneno<‘321A’
B、 select count(*) from t_phonebook where phoneno like‘321%’
C、 select count(*) from t_phonebook where substring(phoneno,1,3)=‘321’
A>或者<操作符会采用索引查找
B:LIKE通配符在XXX%情况下会应用索引,如果在%xxx%等情况下不会应用索引
答案: C:采用函数处理的字段不能利用索引,例如substr()?这个题好像写成java的函数了
答案: C
(5)、已知表tbl中字段land_ID建有索引,字段cust_id建有唯一索引,下列语句查询逻辑相同,其中执行效率最优的是
A、 SELECT* FROM tbl
WHERE land_id> 750
or(cust_id=180 or cust_id=560)
B、 SELECT* FROM tbl
WHERE(cust_id=180 or cust_id=560)
or land_id> 750
C、 SELECT* FROM tbl WHERE land_id> 750
UNION
SELECT* FROM tbl WHERE cust_id= 180
UNION
SELECT* FROM tbl WHERE cust_id= 560
D、 SELECT* FROM tbl WHERE land_id> 750
UNION
( SELECT* FROM tbl WHERE cust_id= 180
UNION ALL
SELECT* FROM tbl WHERE cust_id= 560
)
C/D相比较而言,D的执行效率更高一些
UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录
采用UNION ALL操作符替代UNION,因为UNION ALL操作只是简单的将两个结果合并后就返回。
(6)、员工技能表Staffskill结构如下,Staff和Skill字段建有唯一约束
staff VARCHAR2(10),
skill VARCHAR2(10)
哪条语句可以查询同时拥有技能A和技能B的员工
A、 select staff from Staffskill where skill=’A’ OR skill=’B’
B、 select staff from Staffskill where skill=’A’ AND skill=’B’
C、 select staff from Staffskill where skill=’A’ OR skill=’B’ group by staff
D、 select staff from Staffskill where skill=’A’ OR skill=’B’ group by staff having count(*)>1
答案:D
(7)员工表staff表结构如下
staffNo varchar2(10),
Email varchar2(50)
哪一个SQL语句查询出没有E_mail地址的员工号
A、select staffno from Staff where Email= NULL
B、select staffno from Staff where Email<> NULL
C、select staffno from Staff where Email is null
D、select staffno from Staff where Email is not null
答案: C
(8)Oracle数据库启动步骤的顺序为
1.Mount? 2.Open? 3.Nomount
A、3-1-2
B、2-3-1
C、2-1-3
D、3-2-1
答案:A
(9)存在两个结构相同的数据库表T1(col1,col2,col3)、T2(col1,col2,col3),写出一SQL语句将所有T1数据导入到T2表
A、select col1,col2,col3 from T1 INTO T2(col1,col2,col3)
B、INSERT T1(col1,col2,col3) INTO T2(col1,col2,col3)
C、insert into T2(col1,col2,col3) AS select col1,col2,col3 from T1;
D、insert into T2(col1,col2,col3) select col1,col2,col3 from T1;
答案: D
10)一个表的字段为varchar2,如果建表时没有指定长度,则默认长度为:
A、1
B、25
C、38
D、255
E、4000
F、建表时varchar2类型字段必须指定长度
答案:F
(11)用TRUNCATE和DELETE语句删除表中数据的区别?
A、TRUNCATE命令不记录日志
B、TRUNCATE命令记录日志
C、DELETE命令不记录日志
答案:A
(12)如下查询语句SELECT id_number,100/quantity from inventory如果quantity为空,则查询语句的第二个字段将返回
A、 a space
B、 a null value
C、 a value of 0
D、 a value of 100
E、 the keywork null
答案:B
(13)如下语句:SELECT i.id_number,m.id_number FROM inventory i,manufacturer m
WHERE i.manufacturer_id= m.id_number
Order by inventory.description
执行时是错误的,请问以下措施哪个能够改正这个错误?
A在order by的子句中使用表的别名
B在where子句中去掉表的别名
C在where子句中用表名代替表的别名
D在order by子句中去掉表名,只要字段名称即可
(如果2张表中,不同时存在字段名为description的话,D答案也是正确的)
答案:A
14)A表字段a类型int中有100条记录,值分别为1至100。如下语句
SELECT a FROM A
WHERE A BETWEEN 1 AND 50
OR(A IN(25,70,95)
AND A BETWEEN 25 AND 75)
则如下哪个值在这个sql语句返回的结果集中
A、30? B、51? C、75? D、95
答案:A
15)变量v_time=‘23-MAY-00’,如下那条语句返回值为‘01-JAN-00’?
A SELECT ROUND(V_TIME,’DAY’) FROM DUAL;
B SELECT ROUND(V_TIME,’YEAR’) FROM DUAL;
C SELECT ROUND(V_TIME,’MONTH’) FROM DUAL;
D SELECT ROUND(TO_CHAR(V_TIME,’YYYY’)) FROM DUAL;
答案:B
16)关于索引(index)的说法哪些是错误?
A、创建索引能提高数据插入的性能
B、索引应该根据具体的检索需求来创建,在选择性好的列上创建索引
C、索引并非越多越好
D、建立索引可使检索操作更迅速
答案: A
(17)指出下面sql语句的错误之处:
select id_number“Part Number”,sum(price)“price” from inventory
where price> 50
group by“Part Number”
order by 2;
A、order by 2
B、from inventory
C、 where price> 50
D、group by“Part Number”
答案:D
(18)如下语句
if v_num> 5 then
v_example:= 1;
elsif v_num> 10 then
v_example:= 2;
elsif v_num< 20 then
v_example:= 3;
elsif v_num< 39 then
v_example:= 4;
else? v_example:= 5;
如果v_num= 37,则v_example的值是多少?
A、1? B、2 C、3 D、4 E、5
答案:A
【数据库历年期末考试题】数据库原理期末考试题
2005-2006(2)数据库系统原理试题(A)参考答案及评分标准
一、填空题(每空1分,共14分)
1、数据结构
2、元组
3、实体完整性参照完整性
4、 1NF
5、数据字典
6、 B R+BR B S B S+BR B S
7、可串行的
8、 RAID
9、动态Hash方法可扩展Hash方法
10、并发控制技术数据库恢复技术
二、选择题(每题1分,共10分)
1、 D 2、A 3、A 4、B 5、C 6、C 7、C 8、C 9、C 10、A
三、简答题(每题4分,共16分)
1.可以表示任何关系代数操作的5种基本代数操作是什么?
答:⋃,-,⨯,σ,π
注:1个1分,写对4个即可得4分
2.关系数据库中常用的连接操作的实现算法有哪些?
答:循环嵌套连接算法(1分)、排序合并连接算法(1分)、hash连接算法(1分)、索引连接算法(1分)。
3.简述B树和B+树的区别。
答:(1)B+树的叶子节点链在一起(2分)。(2)B+树的内节点不存放数据指针(2分)。
4.什么是数据库事务?什么是数据库事务的原子性?
答:一个存取或更改数据库的程序的运行称为数据库事务(2分)。事务中的所有操作要么全部被成功的完成且这些操作的结果被永久地存储到数据库中,要么这
个事务对数据库和其它事务没有任何影响。这种性质称为事务的原子性(2分)。
四、综合题(每题12分,共60分)
(一)已知关系S,P,J,SPJ的关系模式为:
S(SNO,SN,CITY)
P(PNO,PN,COLOR)
J(JNO,JN,CITY)
SPJ(SNO,JNO,PNO,QTY)
其中:SNO为供应商号,SN为供应商姓名,CITY为所在城市;PNO为零件号,PN为零件名称,COLOR为颜色;JNO为工程项目号,JN为工程项目名称;QTY为数量。
1、试用
∏JN((∏JNO,PNO(SPJ)÷∏PNO(P∏JNO,JN(J))(4分)
2、试用完成下列查询:把零件号为P2的零件重量增加5,颜色改为黄色。
UPDATE P
SET WEIGHT=WEIGHT+5,COLOR=’黄色’
WHERE PNO=’P2’;(4分)
3、试用完成下列查询:取出1个以上供应商提供的零件号。
SELECT PNO
FROM SPJ
GROUP BY PNO
HA VING COUNT(SNO)≥1(4分)
(二)设某商业集团数据库有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品编号、商品名、规格、单价等;三是“供应商”实体集,属性有供应商编号、供应商名、地址等。
商店与商品间存在“销售”联系,每个商店可销售多种商品,每个商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;供应商与商品间存在着“供应”联系,每个供应商供应多种商品,每种商品可以向多个供应商订购。供应商供应商品给每个商店有月供应量。
(1)试画出E-R图,并在图上注明属性。
(2)将E--R图转换成关系模型,并指明主键和外键。
(1)E-R图如图所示。
(6分,其中实体2分、联系2分、属性2分)
(2)此E--R图转换成的关系模型如下
商店(商店编号,商店名,地址)主码为商店编号
供应商(供应商编号,供应商名,地址)主码为供应商编号
商品(商品编号,商品名,规格,单价)
销售(商店编号,商品号,月销售量)
主码为(商店编号,商品号),外码为商店编号和商品号
供应(供应商编号,商店编号,月供应量)
主码为(供应商编号,商店编号),外码为供应商编号,商店编号
共6分,由于学生的写法多样,教师根据具体情况给分。
(三)1.设关系模式R其中: U={A, B, C, D, E, P}
F={A→B,C→P,E→A,CE→D}
求出R的所有候选关键字。
解:由计算可知:(CE)的闭包={ABCDEP}
而 C的闭包={CP}
E的闭包={ABE}(2分)
所以:R的候选键为: CE。(2分)
2.判断下面的关系模式最高属于第几范式),并说明理由。
R({A,B,C},{AC→B,AB→C,B→C})
答:是1NF,(2分)因为该关系的候选键之一为AB,又因为有B→C,存在部分函数依赖(2分),所以,该关系为1NF.
3.设关系R具有属性集合{O, I, S, A, B},函数依赖集合{I->B, IS->A, A->O}。把R分解成
3NF,并使其具有无损连接性和函数依赖保持性。
答:{IB,ISA,AO}(4分)
(四)设文件F具有10000个记录,每个记录50字节,其中10字节用来表示文件的键值。每个磁盘块大小1000字节,指向磁盘块的指针占5字节,不允许记录跨两个块。
(1)如果为文件F建立简单hash索引,使用100个hash桶,则桶目录需要多
少磁盘块?平均每个桶需要多少磁盘块?
答:(1)1(2)10000个记录/100个桶=100个记录每桶,(2分)100个记
录×50字节每记录/1000字节每块=5块(2分)
(2)如果为文件F建立B+树索引,各磁盘块尽量装满,需要多少磁盘块存储索
引?
答:求秩D:5D+10(D+1) D=67(2分)
即每个叶节点能保存D-1=66个键值。所以叶节点数为⎡10000/66⎤
=152个。(2分)
上一层的内节点同样有67个指针,是一个67叉的节点,
⎡10000/67⎤=3,⎡3/67⎤=1(2分)
因此B+树的节点总数为152+3+1=156个。即需要156个磁盘块
存储B+树索引。(2分)
(五)对于教学数据库S(S#,SNAME,AGE,SEX),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)。现有一个查询:检索至少学习W ANG老师所授一门课程的男学生学号和姓名。
1.给出该查询的关系代数表达式,并画出该表达式构成的语法树。
2.使用启发式优化算法对语法树进行优化,得到优化的语法树。
解:(1)关系代数表达式:
∏ S#,SNAME(σS.S#=SC.S#∧SC.C#=C.C#∧S.SEX=’男’∧teacher=’wang’(S×SC×C))(3分)
∏ S#,SNAME
S.S#=SC.S#∧SC.C#=C.C#∧S.SEX=’男’∧teacher=’wang’
(3分)
∏ S#,SNAMEσSC.C#=C.C#
σteacher=’wang’
∏ S#,C# S.SEX=’男’
s
结果树(3分) c sc(3分)
数据库简答题!!考试题目!跪求答案!!急!!
关系模型:读者表(读者编号,姓名,性别,出生年月,单位,可借阅图书数目)主键是读者编号
图书信息表(书号,书名,作者,出版社,可被借次数)主键是书号
借阅表(读者编号,书号,借阅时间,归还时间)读者编号参照读者表的读者编号,书号参照图书信息表的书号
关于数据库考试题和数据库简答题!!考试题目!跪求答案!!急!!的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。