数据库系统概论题库(数据库题库和答案)
大家好,今天来为大家分享数据库系统概论题库的一些知识点,和数据库题库和答案的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
数据库系统概论 选择题(50分!)
1: D.模式
2: A.表中任意两行的之不能相同
3: C.并发控制
4: C.3NF
5: D.数据的管理
6: C.概念
7: B.数据结构、数据操作、完整性约束条件
8: B.应用程序
9: C.主码
10: B.连接
11: C.select
12: C.保留少部分冗余数据可提高查询速度
----------------------------------------------------------------------
第二份:
1: A.关系
2:D.不知道或无意义的值
3:D.提高了用户的查询速度
4:B.from
5:B.消除插入异常,删除异常和数据冗余
6:D.隔离性
7:B.关系数据模型
8:A.不会因为数据的变化而影响应用程序
9:C.并发控制
10:B.主码
数据库系统概论---12道选择题(详细解释的话加分!)
设有关系R1和R2,经过关系运算得到结果S,则S是__(D)
A.一个数组 B.一个对象 C.一个数据库 D.一个关系
解释:这个不用多说,关系运算得到一个关系。
2、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是__C___。
A.多对多 B.一对一 C.多对一 D.一对多
解释:这个很明显,每个员工只能属于一个部门,一个部门中有多个员工。从职员到部门是说的这两个实体间的关系,而不是一个员工(具体到一个人)和一个部门(具体到一个部门)之间的关系。
3、SQL语言中,用GRANT/REVOKE语句实现数据库的_D ____.
A.并发控制 B.完整性控制 C.一致性控制 D.安全性控制
解释:授权语句,控制用户权限,保证安全。
4、有关动态增量备份的描述正确的是___D___。
A.动态增量备份过程不允许外部事务程序访问数据库
B.动态增量备份会备份出全部数据
C.动态增量备份装载后数据库即处于一致性状态
D.动态增量备份宜在事务不繁忙时进行
解释:动态增量备份时差异备份,B错误。动态允许外部事务访问数据库,A错误。备份前后数据会有变化,所以装载后的数据库处于不一致性状态。C错误
5、事务回滚指令ROLLBACK执行的结果是_____。( B)
A.跳转到事务程序开始处继续执行
B.撤销该事务已经做出的任何对数据库的修改
C.事务执行出错
D.跳转到事务程序结束处继续执行
解释:事务的ACID,rollback回滚该事务已经做出的任何对数据库的修改
8、日志文件用于事务故障、_____的恢复。( B)
A.系统故障、CPU故障 B.系统故障、介质故障
C.介质故障、CPU故障 D.介质故障、入侵故障
解释:硬性知识
9、SQL语言中,属于“模式DDL”语言的是____A__语句。
A.create table B.update C.select D.insert
解释:数据定义语言
10、数据库并发操作通常会带来丢失修改、__B____和读脏数据等问题。()
A.不可恢复 B.不可重复读 C.不可备份 D.不可持续
解释:硬性知识
11、关系R(A,B,C,D),码为AB,函数依赖{AB→C,AB→D,C→D},最高范式为)____B___.()
A.1NF B.2NF C.3NF D.BCNF
解释:ab->c,c->d=>ab->d,有传递依赖,而且每一个非主属性完全依赖于ab
12、事务T要写数据A,则应该对数据A的上层节点加__A__.()
A.X锁 B.S锁 C.IS锁 D.IX锁
解释:加排他锁
数据库系统概论课后题答案
9.答:(1)首先画出一些重的函数依赖,所有这些函数依赖都是根据习题的文字说明和语义假设导出。语义假设如下:
1)一个职工不能同时成为多个部门的领导人; 2)一个职工不能同在在多个部门就职; 3)一个职工不能同时参加多个生产项目;
4)一个职工不能同时在两个不同的办公室办公; 5)一个职工不能同时拥有两部或两部以上的电话;
AREA
DBUDGET
OFF#DEPT#MGR_EMP#
PHONE#EMP#PROJ#PBUDGET#
JOBTITLE
DATE
SALARY
6)一个生产项目不能同时分配给多个部门; 7)一个办公室不能同时分配给多个部门;
8)部门号、职工号、项目号、办公室号及电话号码是全局惟一的。(2)先按照图5。12设计一组关系模式,它们都是属于INF的。 DEPT(DEPT#,DBUDGET,MGR_EMP#) PRIMARY KEY(DEPT#)
DEPT#和MGR_EMP#都是候选码,把DEPT#作为主码。
F={DEPT#→DBUDGET,DEPT#→MGR_EMP#,MGR_EMP#→DEPT#} EMPI(EMP#,DEPT#,PROJ#,OFF#,PHONE# PRIMARY KEY(EMP#)
F={EMP#→DEPT#,EMP#→PROJ#,EMP#→OFF#,EMP#→PHONE#,PHONE#→OFF#,OFF#→DEPT#,PROJ#→DEPT#} JOB(EMP#,JOBTITLE)
PRIMARY KEY(EMP#,JOBTITLE)
F={EMP#,JOBTITLE→EMP#,EMP#,JOBTITLE→JOBTITLE} SALHIST(EMP#,JOBTITLE,DATE,SALARY) PRIMARY KEY(EMP#,DATE)
F={EMP#,DATE→JOBTITLE,EMP#,DATE→SALARY} PROJ(PROJ#,DEPT#,PBUDGET) PRIMARY KEY(PROJ#)
F={PROJ#→DEPT#,PROJ#→PBUDGET} OFFICE(OFF#,DEPT#,AREA) PRIMARY KEY(OFF#)
F={OFF#→DEPT#,OFF#→AREA} PHONE(PHONE#,OFF#) PRIMARY KEY(PHONE#)
F={PHQNE#→OFF#}
(3)现在来分析一下这7个关系模式,发现:SALHIST(EMP#,DATE,JOBTITLE,SALARY)的属性包含了JOB(EMP#,JOBTLTLE)的属性,所以JOB(EMP#,JOBTITLE)可以消去。
EMP1中OFF#和DEPT#都传递函数依赖于主码(EMP#)。OFF#通过PHONE#,DEPT#通过PROJ#或OFF#(然后通过PHONE#)传递依赖于{EMP#},所以可以把EMP1(EMP#,DEPT#,PROJ#,OFF#,PHONE#)分解成下面4个3NF的关系模式: EMP(EMP#,PROJ#,PHONE#) PRIMARY KEY(EMP#) X(PHONE#,OFF#)
PRIMARY KEY(PHONE#) Y(PROJ#,DEPT#)
PRIMARY KEY(PROJ#) Z(OFF#,DEPT#) PRIMARY KEY(OFF#)
然而,X就是PHONE,Y是PROJ的投影,Z是OFFICE的投影,所以X、Y、Z都可以消去。
最后可以得到下面6个关系模式,所有这些关系模式都是属于3NF的,进一步发现他们也是BCNF的。
DEPT(DEPT#,DBUDGET,MGR_EMP#) PRIMARY KEY(MGR_EMP#) EMP(EMP#,PROJ#,PHONE#) PRIMARY KEY(EMP#)
SALHIST(EMP#,DATE,JOBTITLE,SALARY) PRIMARY KEY(EMR#)
PROJ(PROJ#,DEPT#,PBUDGET) PRIMARY KEY(PROJ#)
OFFICE(OFF#,DEPT#,AREA) PRIMARY KEY(OFF#) PHONE(PHONE#,OFF#)
PRIMARY KEY(PHONE#)
10.答:其语义假设如下:
(1)任何两个顾客的收货地址都不相同;(2)每一个订单都有一个惟一的订单号码。
(3)每个订单的订单细则在这个订单里有一个惟一的编号。函数依赖图如下:
ADDRESSADDRESS
QTYORD
ORD#
DISCOUNT
CREDLIM
BAL
CUST#
QTYOUTDANGER
PLANT#QTYOH
ITEM#DESCNLINE#
相应的BCNF关系模式如下:
CUST(CUST#,BAL,CREDLIM,DISCOUNT) PRIMARY KEY(CUST#) SHIPTO(ADDRESS,CUST#) PRIMARY KEY(ADDRESS)
ORDHEAD(ORD#,ADDRESS,DATE) PRIMARY KEY(ORD#)
ORDLINE(ORD#,LINE#,ITEM#,QTYORD,QTYOUT) PRIMARY KEY(ORD#,LINE#) ITEM(ITEM#,DESCN)
PRIMARY KEY(ITEM#)
IP(ITEM#,PLANT#,QTYOH,DANGER) PRIMARY KEY(ITEM#,PLANT#)
OK,本文到此结束,希望对大家有所帮助。