数据库习题解答Word文档格式.docx

上传人:b****2 文档编号:14952056 上传时间:2022-10-26 格式:DOCX 页数:22 大小:1,005.98KB
下载 相关 举报
数据库习题解答Word文档格式.docx_第1页
第1页 / 共22页
数据库习题解答Word文档格式.docx_第2页
第2页 / 共22页
数据库习题解答Word文档格式.docx_第3页
第3页 / 共22页
数据库习题解答Word文档格式.docx_第4页
第4页 / 共22页
数据库习题解答Word文档格式.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

数据库习题解答Word文档格式.docx

《数据库习题解答Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库习题解答Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。

数据库习题解答Word文档格式.docx

(3)查找商品品牌名字的第二个字是“兰”的所有商品。

SELECT*FROMT_GoodsWHEREG_ppLIKE‘__兰%’;

(4)统计显示每种商品发货的总数量,包括商品名称、品牌、总数量、单位、发货单号等。

SELECTG_mc,G_pp,SUM(D_sl)FROMT_Goods,T_sale

WHERET_sale.G_spdm=T_Goods.G_spdm

GROUPBYT_sale.G_spdm,G_mc,G_pp;

(5)将商品代码为“s2”的商品的单价上浮20%。

UPDATET_saleSETD_dj=D_dj+D_dj*0.2

WHEREG_spdm=‘s2’;

(6)向库存表中插入一商品信息(‘s11’,‘红色’,‘165/88A’,100)。

INSERTINTOT_stock

VALUES(‘s11’,‘红色’,‘165/88A’,100);

(7)删除青岛市的所有客户信息。

DELETEFROMT_clientWHEREc_dz=‘青岛市’;

(8)将商品代码为“s11”的商品的库存量减少10。

UPDATET_stockSETkc_sl=kc_sl-10

WHEREG_spdm=‘s11’;

3.7在习题3.1的关系数据库上实现下列各题:

(1)创建一个包含客户代码、名称、联系人和手机号的视图。

CREATEVIEWV_client

AS

SELECTC_dm,C_mc,C_lxr,C_sjhFROMT_client;

(2)创建一个能完整反映发货情况的视图,包括发货单号、商品代码、商品名称、客户代码、客户名称、发货数量、总金额等。

CREATEVIEWV_sale

AS

SELECTD_fhdh,t_sale.G_spdm,G_mc,t_sale.C_dm,C_mc,D_sl,D_je

FROMT_client,T_Goods,T_sale

WHERET_client.C_dm=T_sale.C_dmANDT_Goods.G_spdm=T_sale.G_spdm;

3.8创建一触发器,实现当删除商品表中的某商品时,自动删除库存表中对应商品的信息。

CREATETRIGGERdel_stock

AFTERDELETEONT_Goods

FOREACHROW

BEGIN

DELETEFROMT_stock

WHEREG_spdm=:

OLD.G_spdm;

END;

P191

5.7有3个事务的一个调度r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A),该调度是冲突可串行化的调度吗?

为什么?

解答:

该调度是冲突可串行化调度。

r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A)

可以把r1(A)和w3(B)交换得到:

r3(B)w3(B)r1(A)r2(B)r2(A)w2(B)r1(B)w1(A)

再把r1(A)依次和r2(B)、r2(A)、w2(B)交换得到:

r3(B)w3(B)r2(B)r2(A)w2(B)r1(A)r1(B)w1(A)

最后得到的调度等价于串行调度T3T2T1,所以该调度室冲突可串行化调度。

5.8设T1,T2是如下的两个事务:

T1:

读A;

B=A+3;

写回B

T2:

读B;

A=B+2;

写回A

设A、B的初值均为1:

(1)若允许这两个事务并发执行,有多少可能的正确结果,请一一列举并给出一个可串行化调度,同时给出执行结果。

(2)若这两个事务遵守两段锁协议,请给出一个产生死锁的调度。

(1)

串行执行次序有:

T1T2,其结果为:

A=6,B=4

T2T1,其结果为:

A=3,B=6

可串行化的调度如下:

T1

T2

SLOCK(A)

Y=R(A)=1

UNLOCK(A)

XLOCK(B)

B=Y+3=4

W(B)

UNLOCK(B)

 

SLOCK(B)

WAIT

X=R(B)=4

XLOCK(A)

A=X+2=6

W(A)

其结果为A=6,B=4。

(2)遵守两段锁协议的事务调度产生死锁。

P256

6.7指出下列关系模式是第几范式?

并说明理由。

(1)R(X,Y,Z),F={(X,Y)→Z}

(2)R(X,Y,Z),F={Y→Z,Y→X,X→(Y,Z)}

(3)R(X,Y,Z),F={X→Y,X→Z}

(1)该关系模式满足第三范式,因为在函数依赖中不存在部分依赖,也不存在传递依赖。

(2)该关系模式满足第三范式(BCNF),因为在函数依赖中不存在部分依赖,也不存在传递依赖。

(3)该关系模式满足第三范式(BCNF),因为在函数依赖中不存在部分依赖,也不存在传递依赖。

6.8设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式统计商店里每个职工的日营业额,以及职工所在的部门和经理信息。

如果规定:

每个职工每天只有一个营业额;

每个职工只在一个部门工作,每个部门只有一个经理。

试回答下列问题:

(1)根据上述规定,写出模式R的基本FD和关键码;

(2)说明R不是2NF的理由,并把R分解成2NF模式集;

(3)进而分解成3NF模式集。

(1)模式R的FD(函数依赖)集:

{(职工编号,日期)→日营业额,职工编号→部门名,部门名→部门经理},关键码为:

(职工编号,日期)。

(2)在函数依赖中,部门名部分依赖于关键码:

(职工编号,日期),因此R不满足2NF。

可以将R分解如下:

R1(职工编号,日期,日营业额)

R2(职工编号,部门名,部门经理)

则R1和R2都满足2NF。

(3)由于R2中有函数依赖:

{职工编号→部门名,部门名→部门经理},即存在传递依赖,故不满足3NF,对R2再分解,结果如下:

R2(职工编号,部门名)

R3(部门名,部门经理)

显然三个关系模式都满足3NF。

6.9设有一商务数据库用以处理销售记帐,它涉及的信息包括:

顾客姓名,所在单位及电话号码;

商品名称,型号及单价,某顾客购买某商品的数量和日期;

假设无同名顾客,无同名商品,电话公用(指同一单位的顾客使用同一电话),顾客可在不同日期购买同一商品。

要求完成该数据库的逻辑设计。

根据题意,其ER图如下:

由ER图得到初始关系模式为:

顾客(姓名,单位,电话)

商品(商品名称,型号,单价)

购买表单(姓名,商品名称,购买数量,购买日期)

模式求精:

分析关系模式:

顾客(姓名,单位,电话),其中有函数依赖:

姓名→单位,单位→电话,即出现了传递依赖,故不满足3NF,分解得到:

顾客单位(姓名,单位)

单位电话(单位,电话)

6.10设一个海军基地要建立一个舰队管理信息系统,它包括如下两个方面的信息:

舰队方面:

舰队:

舰队名称,基地地点,舰艇数量

舰艇:

编号,舰艇名称,舰队名称

舰艇方面:

舰艇编号,舰艇名称,武器名称

武器:

武器名称,武器生产时间,舰艇编号

官兵:

官兵证号,姓名,舰艇编号

其中,一个舰队拥有多艘舰艇,一艘舰艇属于一个舰队;

一艘舰艇安装多种武器,一种武器可安装与多艘舰艇上;

一艘舰艇有多名官兵,一名官兵只属于一艘舰艇。

请完成如下设计:

(1)分别设计舰队和舰艇两个局部ER图。

(2)将上述两个局部ER图合并为一个全局ER图。

(3)将该全局ER图转换为关系模式。

(4)合并时是否存在命名冲突?

如何处理?

(1)舰队局部ER图:

舰艇局部ER图:

(2)全局ER图:

(3)关系模式如下:

舰艇(舰艇编号,舰艇名称,舰队名称)

舰队(舰队名称,基地地点)

武器(武器名称,生产时间)

官兵(官兵证号,姓名,舰艇编号)

安装(舰艇编号,武器名称,武器数量)

(4)合并时存在命名冲突,舰艇在两个局部ER图中有不同的命名:

编号和舰艇编号,采用折中统一的方法,最后命名为舰艇编

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

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

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