数据库技术与应用课后习题答案 2.docx
《数据库技术与应用课后习题答案 2.docx》由会员分享,可在线阅读,更多相关《数据库技术与应用课后习题答案 2.docx(13页珍藏版)》请在冰豆网上搜索。
数据库技术与应用课后习题答案2
第一章习题答案
1.1选择题
1.A2.C3.C4.B5.C6.A7.C8.B9.D10.A11.D12.A13.A
1.2填空题
数据
数据的逻辑独立性
数据的物理独立性
层次数据模型,网状数据模型,关系数据模型
能按照人们的要求真实地表示和模拟现实世界、容易被人们理解、容易在计算机上实现
实体、记录
属性、字段
码
域
一对一、一对多、多对多
E-R模型
E-R模型
层次模型、网状模型、关系模型
数据操作、完整性约束
矩形、菱形、椭圆形
层次模型、一对多
网状模型
关系模型
关系
外模式、模式、内模式
三级模式、两级映像
外模式、模式、内模式
数据、程序
数据逻辑、数据物理
DBMS(数据库管理系统)、DBA(数据库管理员)
1.4综合题
2.
(注:
各实体的属性省略了)
3.
第二章习题答案
1.1单项选择题
1.C2.A3.B4.C5.C6.D7.A8.B
1.2填空题
集合
2.能唯一标识一个实体的属性
系编号,学号,系编号
关系,元组,属性
关系模型,关系,实体,实体间的联系
投影
1.4综合题
1.πsno(σcno=’2’(SC))
2.πsno(σcname=’信息系统’(SCCOURSE))
3.πsno,SNAME,SAGE(STUDENT)
第三章习题答案
1.1
select*fromjobs
1.2
selectemp_id,fname+'-'+lnameas'Name'fromemployee
1.3
selectemp_id,fname+'-'+lnameas'Name',Year(getdate())-Year(hire_date)as'worketime'fromemployeeorderby'worketime'
2.1
select*fromemployeewherefnamelike'f%'
2.2
select*fromemployeewherejob_id='11'
2.3
selectemp_id,fname+'-'+lnameas'Name',Year(getdate())-Year(hire_date)asworketime
fromemployee
where(Year(getdate())-Year(hire_date))>5
orderbyworketime
2.4
select*fromemployeewherecast(job_idasinteger)>=5andcast(job_idasinteger)<=8
2.5
select*fromemployeewherefname='Maria'
2.6
select*fromemployeewherefnamelike'%sh%'orlnamelike'%sh%'
3.1
select*fromsaleswhereord_date<'1993-1-1'
4.1
selectdistinctbh,zyhfromstu_infowhere
bhin
(
selectbhfromstu_info
groupby(bh)
havingcount(*)>30andcount(*)<40
)
orderbybh
或者是
selectbh,zyhfromstu_info
groupbyzyh,bh
havingcount(bh)>30andcount(bh)<40
orderbybh
4.2
select*fromgban
wherebhlike'计%'
4.3
select*fromgfied
wherezymlike'%管理%'
4.4
selectxh,xm,zym,stu_info.bh,rxsjfromstu_info,gfied,gbanwherenl>23
andstu_info.zyh=gfied.zyhandstu_info.bh=gban.bh
4.5
selectzyh,count(*)fromgban
wherexsh='03'
groupbyzyh
第四章习题答案
4.1单项选择题:
B 2、A 3、C 4、A 5、A 6、C 7、C 8、D 9、B 10、A 11、C(或B,即书上121页例题中from的写法) 12、A 13、C 14、C 15、C
4.2填空题:
droptable
altertableadd<列名或约束条件>
withcheckoption
基本表 基本表
distinctgroupbyroderby
数据定义 数据操纵 数据控制
distinct
like%_
自含式 嵌入式
10、orderbyascdesc
4.3综合题
1、SELECTXH,XM,ZYM,BH,RXSJ
FROMSTU_INFO,GFIED
WHERESTU_INFO.ZYH=GFIED.ZYHANDNL>23ANDXBM='男'
2、SELECTZYM专业名,count(*)人数FROMSTU_INFO,GFIED
WHERESTU_INFO.XSH='03'ANDSTU_INFO.ZYH=GFIED.ZYH
GROUPBYZYM
注意:
该题目中给出的条件XSH='03'中的03代表的是“控制科学与工程”学院,信息学院的代码是12,大家可根据具体情况来做该题。
3、SELECTbh,count(*)as人数FROMSTU_INFOGROUPBYbh
4、SELECTXH,XM,XBM,BHFROMSTU_INFO
WHEREZYHIN
(
SELECTZYH
FROMSTU_INFO
WHEREXM='李明'
)
ORDERBYXH
5、SELECTDISTINCTGCOURSE.KCH,KMFROMSTU_INFO,XK,GCOURSE
WHEREXK.KCH=GCOURSE.KCHANDSTU_INFO.XSH='12'
ANDSTU_INFO.XH=XK.XH
该题中设计到的课程名称只有在GCOURSE表中存在,所以在题目开始的几个表中还应填加该表。
另外把信息学院的代码改为12。
6、SELECTCOUNT(DISTINCTKCH)AS选课门数,AVG(KSCJ)AS平均成绩
FROMSTU_INFO,XK
WHERESTU_INFO.XH=XK.XHANDXSH='12'
7、SELECTDISTINCTSTU_INFO.XH,XM,BH,ZYM,KM
FROMSTU_INFO,XK,GFIED,GCOURSE
WHEREKSCJ>85ANDSTU_INFO.XH=XK.XHANDXK.KCH=GCOURSE.KCHANDSTU_INFO.ZYH=GFIED.ZYH
ORDERBYZYM,BH,STU_INFO.XH
8、SELECTSTU_INFO.XH,XM,XSM,ZYM,BH,PYCCM
FROMSTU_INFO,XK,GDEPT,GFIED
WHEREKKNY='20011'ANDSTU_INFO.XH=XK.XHANDSTU_INFO.XSH=GDEPT.XSHANDSTU_INFO.ZYH=GFIED.ZYH
GROUPBYSTU_INFO.XH,XM,XSM,ZYM,BH,PYCCM
HAVINGCOUNT(*)>10
9、SELECTDISTINCTbh
FROMSTU_INFO
10、DELETE*FROMSTU_INFO
WHEREXHLIKE'2000%'
或
DELETE*FROMSTU_INFO
WHERELEFT(XH,4)='2000'
11、ALTERTABLESTU_INFO
ADDBYSJvarchar(8)
12、UPDATEXK
SETKSCJ=60
WHEREKSCJBETWEEN55AND59and
XHin
(
SELECTxh
FROMstu_info
WHEREzyh='0501'
)
and
KCHin
(
SELECTkch
FROMgcourse
WHEREkm='大学英语'
)
前面已经考虑到在该题目中应该加入学生课程信息表(GCOURSE)
13、UPDATEGCOURSE
SETKCXF=6
WHEREKCH='090101'
14、CREATETABLECCOURSE
(
KCHchar(6),
KMvarchar(30),
KCYWMvarchar(30)
)
15、CREATEVIEWISEAS
SELECT*
FROMSTU_INFO
WHEREXSH=’12’
第五章课后答案
5.1
1~7BABABCB
5.2
1使属性域变为简单域消除非主属性对主关键字的部分依赖消除非主属性对主关键字的传递依赖
2平凡函数依赖
3Y也相同唯一的Y值
5.3
1函数依赖:
P136定义5.1
部分函数依赖:
P138定义5.4
完全函数依赖:
P138定义5.4
传递函数依赖:
P138定义5.5
1NF:
P139定义5.6
2NF:
P141定义5.7
3NF:
P142定义5.8
BCNF:
P144定义5.9
在全码关系中R〈U,F〉中若存在这样的码X,属性组Y及非主属性Z使得X→Y,Y→Z成立,所以全码关系R〈U,F〉∈3NF。
在全码关系R〈U,F〉中,对于R中的函数依赖,若X→Y且X必含有码,所以全码关系R∈BCNF
2
(1)R的码是(Sno,Cno),R是1NF,因为Teacher和Title属性部分函数依赖于码(Sno,Cno),所以R∈1NF
(2)SC(Sno,Cno,Grade)CT(Cno,teacher)TT(Teacher,title)
3D->BC->A
4需求分析
需求分析是数据库设计的第一个阶段,从数据库设计的角度来看,需求分析的任务是对现实世界要处理的对象(组织、部门、企业等)进行详细的调查了解,通过对原系统的了解,收集支持新系统的基础数据并对其进行处理,在此基础上确定新系统的功能。
概念结构设计阶段
将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。
简单地说数据库概念结构设计的任务就是根据需求分析所确定的信息需求,建立信息模型。
如E-R模型。
逻辑结构设计阶段
数据库逻辑结构设计的任务是把概念结构设计阶段所得到的与DBMS无关的数据模式,转换成某一个DBMS所支持的数据模型表示的逻辑结构。
数据库物理设计阶段
数据库物理设计是对给定的关系数据库模式,根据计算机系统所提供的手段和施加的限制确定一个最适合应用环境的物理存储结构和存取方法
数据库实施阶段
在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行
数据库运行和维护阶段
数据库应用系统经过试运行后即可投入正式运行。
在数据库系统运行过程中必须不断地对其进行评价、调整与修改。
包括:
数据库的转储和恢复、数据库的安全性和完整性控制、数据库性能的监督、分析和改进、数据库的重组织和重构造。
P149最后一段
ER图是用来描述某一组织(单位)的概念模型,提供了表示实体、属性和联系的方法。
构成ER图的基本要素是实体、属性和关系。
实体是指客观存在并可相互区分的事特;属性指指实体所具有的每一个特性。
商店(商店编号,商店名,地址,电话)码:
商店编号
顾客(顾客编号,姓名,性别,家庭住址,出生年月)码:
顾客编号
消费(商店编号,顾客编号,消费金额)码:
商店编号,顾客编号
第六章习题答案
6.1单项选择题
1、A2、D3、D4、D5、B6、D7、C
6.2填空题
1、原子性一致性隔离性持续性ACID
2、软故障硬故障
3、静态动态
4、丢失修改不可重复读读“脏”数据
5、自主存取控制强制存取控制
6、实体完整性约束参照完整性约束用户自定义完整性约束
6.4综合题
createtable读者
(
借书证号char(10)primarykey,
姓名varchar(10)notnull,
年龄tinyintnotnull,
所在院系varchar(20)notnull
)
create图书
(
图书号char(8)primarykey,
书名varchar(20)notnull,
作者varchar(10)notnull,
出版社varchar(30)notnull,
价格realnotnullcheck(价格>0and价格<=120)
)
create借阅
(
借书证号char(10)notnull,
图书号char(8)notnull,
借阅日期datetimenotnull,
primarykey(借书证号,图书号),
foreignkey(借书证号)references读者(借书证号),
foreignkey(图书号)references图书(图书号)
)
实验4答案
Selectxh,xm,xbmfromstu_info,gdeptwherestu_info.xsh=gdept.xshandgdept.xsm=’信息科学与工程’
或Selectxh,xm,xbmfromstu_infowherexsh=(selectxshfromgdeptwherexsm=’信息科学与工程’)
Selectstu_info.xh,xm,kmfromstu_info,xk,gcoursewherestu_info.xh=xk.xhandxk.kch=gcourse.kchandkscj>85
Selectxh,xm,xsmfromstu_info,gdeptwherestu_info.xsh=gdept.xshandxhlike‘2000%’
Selectxh,xmfromstu_infowherexhin(selectxhfromxkwherekch=’090101’andkscj<60)
或selectstu_info.xh,xmfromstu_info,xkwherestu_info.xh=xk.xhandkch=’090101’andkscj<60
5.selectstu_info.xh,xm,kmfromstu_info,xk,gcoursewherestu_info.xh=xk.xhandxk.kch=gcourse.kchandxsh=’12’andkscj<60
6.selectstu_info.xh,xm,xsmfromstu_info,xk,gdeptwherestu_info.xsh=gdept.xshandstu_info.xh=xk.xhandkkny=’20011’groupbystu_info.xh,xm,xsmhavingcount(*)>=10
实验5答案
1、2题参考实验4答案
3.Selectxh,xm,xbm,bhfromstu_infowherezyhin(selectzyhfromstu_infowherexm=’李明’)orderbyxh
实验6答案
Createviewnum_banasselectcount(distinctbh)fromstu_info
Createviewbanasselectdistinctbhfromstu_info
Createviewis_stuasselectxm,xbm,bhfromstu_infowherexsh=’01’orxsh=’02’
Createviewzhang_stuasselect*fromstu_infowherexsh=’01’andxmlike‘张%’
或Createviewzhang_stuasselect*fromstu_info,gdeptwherexsm=’材料科学与工程’andxmlike‘张%’andstu_info.xsh=gdept.xsh
8.Createview材0168asselectstu_info.*,xk.*fromstu_info,xkwherebh=’材0168’andstu_info.xh=xk.xh
Createviewgaoshu_stuasselectxmfromstu_info,xk,gcoursewherestu_info.xh=xk.xhandgcourse.kch=xk.kchandkm=’高等数学’
或Createviewgaoshu_stuasselectxmfromstu_infowherexhin(selectxhfromxkwherekch=(selectkchfromgcoursewherekm=’高等数学’))