数据库系统概论第五版课后习题答案王珊版.docx

上传人:b****1 文档编号:345317 上传时间:2022-10-09 格式:DOCX 页数:18 大小:127.64KB
下载 相关 举报
数据库系统概论第五版课后习题答案王珊版.docx_第1页
第1页 / 共18页
数据库系统概论第五版课后习题答案王珊版.docx_第2页
第2页 / 共18页
数据库系统概论第五版课后习题答案王珊版.docx_第3页
第3页 / 共18页
数据库系统概论第五版课后习题答案王珊版.docx_第4页
第4页 / 共18页
数据库系统概论第五版课后习题答案王珊版.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据库系统概论第五版课后习题答案王珊版.docx

《数据库系统概论第五版课后习题答案王珊版.docx》由会员分享,可在线阅读,更多相关《数据库系统概论第五版课后习题答案王珊版.docx(18页珍藏版)》请在冰豆网上搜索。

数据库系统概论第五版课后习题答案王珊版.docx

数据库系统概论第五版课后习题答案王珊版

第二章关系数据库

1.试述关系模型得三个组成部分。

答:

关系模型由关系数据结构、关系操作集合与关系完整性约束三部分组成。

2.试述关系数据语言得特点与分类。

答:

关系数据语言可以分为三类:

关系代数语言。

关系演算语言:

元组关系演算语言与域关系演算语言。

SQL:

具有关系代数与关系演算双重特点得语言。

这些关系数据语言得共同特点就是,语言具有完备得表达能力,就是非过程化得集合操作语言,功能强,能够嵌入高级语言中使用。

3(略)

4.

5 、述关系模型得完整性规则。

在参照完整性中,为什么外部码属性得值也可以为空?

什么情况下才可以为空?

答:

实体完整性规则就是指若属性A就是基本关系R得主属性,则属性A不能取空值。

若属性(或属性组)F就是基本关系R得外码,它与基本关系S得主码Ks相对应(基本关系R与S不一定就是不同得关系),则对于R中每个元组在F上得值必须为:

或者取空值(F得每个属性值均为空值);或者等于S中某个元组得主码值。

即属性F本身不就是主属性,则可以取空值,否则不能取空值。

6.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:

1)求供应工程J1零件得供应商号码SNO:

πSno(σJno=‘J1’(SPJ))

2)求供应工程J1零件P1得供应商号码SNO:

πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ))

3)求供应工程J1零件为红色得供应商号码SNO:

πSno(πSno,,Pno(σJno=‘J1‘ (SPJ))∞πPno(σCOLOR=’红‘(P)))

4)求没有使用天津供应商生产得红色零件得工程号JNO:

πJno(SPJ)-πJNO(σcity=‘天津’∧Color=‘红‘ (S∞SPJ∞P)

5)求至少用了供应商S1所供应得全部零件得工程号JNO:

πJno,Pno(SPJ)÷ πPno(σSno=‘S1‘(SPJ))

7、试述等值连接与自然连接得区别与联系。

答:

连接运算符就是“=”得连接运算称为等值连接。

它就是从关系R与S得广义笛卡尔积中选取A,B属性值相等得那些元组

自然连接就是一种特殊得等值连接,它要求两个关系中进行比较得分量必须就是相同得属性组,并且在结果中把重复得属性列去掉。

8.关系代数得基本运算有哪些?

如何用这些基本运算来表示其她运算?

答:

并、差、笛卡尔积、投影与选择5种运算为基本得运算。

其她3种运算,即交、连接与除,均可以用这5种基本运算来表达。

第三章关系数据库语言SQL

1.试述 sQL语言得特点。

答:

(l)综合统一。

 sQL 语言集数据定义语言DDL 、数据操纵语言DML、数据控制语言 DCL得功能于一体。

(2)高度非过程化。

用sQL语言进行数据操作,只要提出“做什么”,而无需指明“怎么做”,因此无需了解存取路径,存取路径得选择以及sQL 语句得操作过程由系统自动完成。

 

(3)面向集合得操作方式。

sQL 语言采用集合操作方式,不仅操作对象、查找结果可以就是元组得集合,而且一次插入、删除、更新操作得对象也可以就是元组得集合。

(4)以同一种语法结构提供两种使用方式。

sQL语言既就是自含式语言,又就是嵌入式语言。

作为自含式语言,它能够独立地用于联机交互得使用方式;作为嵌入式语言,它能够嵌入到高级语言程序中,供程序员设计程序时使用。

(5)语言简捷,易学易用。

2、

3

(1)select*fromSwhereA='10';

(2)selectA,B fromS;

 (3) selectA,B,S、C,S、D,E,FfromS,TwhereS、C=T、CandS、D=T、D;

(4)select*fromS,Twhere S、C=T、C;

(5)select *from S,T whereS、A

(6)selectS、C,S、D,T、* from S ,T;

4.用sQL语句建立第二章习题6中得4个表。

答:

对于S 表:

S (SNO, SNAME,STATUS , CITY);

建S表:

 CREATETABLES(SnoC

(2)UNIQUE,SnameC(6) ,StatusC(2),City C(4));

对于P表:

 P(PNO,PNAME ,COLOR,WEIGHT);

建P表:

CREATETABLEP(PnoC

(2) UNIQUE,Pname C(6),COLORC

(2),WEIGHTINT);

对于J表:

J(JNO ,JNAME, CITY);

建 J表:

CREATETABLEJ(Jno C(2)UNlQUE,JNAME C(8), CITYC(4))

对于sPJ表:

sPJ(sNo,PNo,JNo,QTY);

建SPJ表:

SPJ(SNO,PNO,JNO,QTY)

CREATE TABLESPJ(SnoC

(2),PnoC

(2),JNO C

(2), QTYINT))

针对建立得4个表用sQL语言完成第二章习题6中得查询。

 

 ( l)求供应工程Jl零件得供应商号码SNO;

SELECTDISTSNOFROM SPJ WHEREJNO=’J1’

(2)求供应工程 Jl零件Pl得供应商号码 SNO ;

SELECTDIST SNOFROMSPJ WHEREJNO='J1'AND PNO='P1'

( 3)求供应工程Jl零件为红色得供应商号码SNO ;

SELECT SNO FROMSPJ,PWHEREJNO='J1' AND SPJ、PNO=P、PNOANDCOLOR='红'

( 4)求没有使用天津供应商生产得红色零件得工程号JNO ;

SELECTDISTJNO FROM SPJ WHEREJNO NOTIN (SELE JNOFROMSPJ,P,SWHERES、CITY='天津'AND COLOR='红'ANDS、SNO=SPJ、SNOANDP、PNO=SPJ、PNO)。

(5 )求至少用了供应商 Sl所供应得全部零件得工程号 JNO;

由于VFP不允许子查询嵌套太深,将查询分为两步

A、查询S1供应商供应得零件号

SELECT DISTPNOFROMSPJWHERE SNO='S1'结果就是(P1,P2)

B、查询哪一个工程既使用P1零件又使用P2零件。

SELECT JNOFROMSPJ WHEREPNO='P1'

ANDJNO IN(SELECT JNO FROMSPJWHEREPNO='P2')

5.针对上题中得四个表试用SQL语言完成以下各项操作:

(1)找出所有供应商得姓名与所在城市。

  SELECTSNAME,CITYFROM S

(2)找出所有零件得名称、颜色、重量。

SELECTPNAME,COLOR,WEIGHTFROMP

(3)找出使用供应商S1所供应零件得工程号码。

 SELECTDISTJNOFROMSPJWHERESNO='S1'

(4)找出工程项目J2使用得各种零件得名称及其数量。

SELECTPNAME,QTYFROMSPJ,P

WHEREP、PNO=SPJ、PNOANDSPJ、JNO='J2'

(5)找出上海厂商供应得所有零件号码。

SELECTPNOFROMSPJ,S WHERES、SNO=SPJ、SNOANDCITY='上海'

(6)出使用上海产得零件得工程名称。

SELECTJNAMEFROMSPJ,S,J

WHERES、SNO=SPJ、SNOAND S、CITY='上海'ANDJ、JNO=SPJ、JNO

(7)找出没有使用天津产得零件得工程号码。

注意:

 SELECT DISPJNOFROMSPJWHEREJNONOTIN(SELECTDIST JNOFROMSPJ,SWHERES、SNO=SPJ、SNOANDS、CITY='天津')适用于JNO就是唯一或不唯一得情况、

 注意:

 SELECTDISTJNOFROMSPJ,S WHERES、SNO=SPJ、SNOANDS、CITY<>'天津'适用于JNO就是唯一得情况

(8)把全部红色零件得颜色改成蓝色。

UPDATEP SET COLOR='蓝' WHERECOLOR='红'

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

UPDATESPJSET SNO='S3'WHERE SNO='S5'ANDJNO='J4'ANDPNO='P6'

(10)从供应商关系中删除供应商号就是S2得记录,并从供应情况关系中删除相应得记录。

A、DELETEFROMS WHERE SNO=’S2’

B、DELETE FROMSPJ WHERESNO=‘S2’

(11)请将(S2,J6,P4,200)插入供应情况关系。

INSERT INTOSPJVALUES(‘S2’,‘J6’,‘P4’,200)

6.什么就是基本表?

什么就是视图?

两者得区别与联系就是什么?

答:

基本表就是本身独立存在得表,在sQL中一个关系就对应一个表。

视图就是从一个或几个基本表导出得表。

视图本身不独立存储在数据库中,就是一个虚表。

即数据库中只存放视图得定义而不存放视图对应得数据,这些数据仍存放在导出视图得基本表中。

视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。

7.试述视图得优点。

答 

(l)视图能够简化用户得操作;( 2)视图使用户能以多种角度瞧待同一数据;(3)视图对重构数据库提供了一定程度得逻辑独立性;(4)视图能够对机密数据提供安全保护。

8 .哪类视图就是可以更新得?

哪类视图就是不可更新得?

各举一例说明。

答:

基本表得行列子集视图一般就是可更新得。

若视图得属性来自集合函数、表达式,则该视图肯定就是不可以更新得。

所有得视图就是否都可以更新?

为什么?

答:

不就是。

视图就是不实际存储数据得虚表,因此对视图得更新,最终要转换为对基本表得更新。

因为有些视图得更新不能惟一有意义地转换成对相应基本表得更新,所以,并不就是所有得视图都就是可更新得、

9.请为三建工程项目建立一个供应情况得视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。

CREATEVIEWVSPASSELECTSNO,SPJ、PNO,QTYFROM SPJ,J

WHERESPJ、JNO=J、JNOANDJ、JNAME='三建'

针对该视图VSP完成下列查询:

(1)找出三建工程项目使用得各种零件代码及其数量。

SELECTDISTPNO,QTY FROM VSP

(2)找出供应商S1得供应情况。

SELECTDIST*FROMVSP WHERESNO='S1'

第4章数据库安全性

1.什么就是数据库得安全性?

答:

数据库得安全性就是指保护数据库以防止不合法得使用所造成得数据泄露、更改或破坏。

2.数据库安全性与计算机系统得安全性有什么关系?

答:

安全性问题不就是数据库系统所独有得,所有计算机系统都有这个问题。

只就是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1