互联网数据库网上作业.docx
- 文档编号:28613478
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:39
- 大小:169.59KB
互联网数据库网上作业.docx
《互联网数据库网上作业.docx》由会员分享,可在线阅读,更多相关《互联网数据库网上作业.docx(39页珍藏版)》请在冰豆网上搜索。
互联网数据库网上作业
2关系数据库简介
原题:
1.设有如图所示的关系R和S,计算:
(1)R1=R-S
(2)R2=R∪S
(3)R3=R∩S
R
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
S
A
B
C
a1
b2
c2
a1
b3
c2
a2
b2
c1
参考答案:
R1=R-S
A
B
C
a1
b1
c1
R2=R∪S
A
B
C
a1
b1
c1
a1
b2
c2
a2
b2
c1
a1
b3
c2
R3=R∩S
A
B
C
a1
b2
c2
a2
b2
c1
原题:
2.参考下列两张表格,按要求写出关系运算式?
表一医生表
医生编号
姓名
职称
科室编号
特长
01104
李博
主任医师
01
牙科
01106
刘晓
副主任医师
01
01020
王林
副主任医师
01
02100
李颦
医师
02
03002
王西平
主任医师
03
04005
吴星智
副主任医师
04
06007
李可茹
主任医师
06
表二患者表
患者病例号
患者姓名
性别
年龄
医生编号
病情简介
200212002
李小青
男
36
01104
牙龈炎
200306007
羡平
女
28
01020
智齿
200307003
王东
男
12
03002
皮炎
200307006
刘戈
女
40
04005
骨折
∙年龄在35岁以上的患者;
∙找出所有的主任医师;
∙查找王林医师的所有病人;
∙找到刘戈主治医师的相关信息。
参考答案:
∙年龄在35岁以上的患者:
σ年龄>35(患者)或∏姓名(σ年龄>35(患者))
∙找出所有的主任医师:
σ职称=[主任医师](医生)或∏姓名(σ职称=[主任医师](医生))
∙查找王林医师的所有病人:
∏患者姓名(σ姓名='王林'(医生⋈患者))
∙找到刘戈主治医师的相关信息:
∏姓名,职称,…,特长(σ患者姓名='刘戈'(医生⋈患者))
原题:
3.现有关系模式如下:
SUPPLIES(Sname,Item,Price)
CUSTTOMERS(Cname,Addr,Balance)
ORDRES(Ono,Date,Cname)
INCLUDES(Ono,Item,Quantity)
这里的四个关系模式是一百货商店的“商品供应记录”、“顾客记录”、“顾客发的订单记录”及“订单包括的商品项目记录”四个关系的模式,各属性的意义为:
Sname是商家姓名,Cname是顾客姓名,Item是商品名称,Addr是地址,Price是商品价格,Balance是顾客余额,Ono是订单号,Date是订单发出日期,Quantity是订货数量。
用中文表示关系名称和属性名如下:
提供(商家,商品名称,价格)
顾客(顾客,地址,余额)
订单(订单号,日期,顾客)
包括(订单号,商品名称,数量)
这些关系当前值示例如下:
表一SUPPLIES(商品供应记录)
Sname
Item
Price
长虹公司
彩电
4500.00
大自然公司
鸟
200.00
…
…
…
表二ORDERS(订单记录)
Ono
Date
Cname
0024
1997/01/20
王红
2025
1997/06/09
章静
…
…
…
表三INCLUDES(订单包括的商品项目记录)
Ono
Item
Quantity
0024
彩电
30
2025
鸟
16
…
…
…
写出实现如下操作的QBE语句表格(按表格中数字顺序在文本框中填入相应内容,空内容不填写):
∙查询提供的商品价格在1元以上的任何供应商的商品及其价格和供应商名称;
SUPPLIES
Sname
Item
Price
①
②
③
④
∙查询各类商品的平均价格;
SUPPLIES
Sname
Item
Price
⑤
⑥
⑦
⑧
∙查询供应商的数目;
SUPPLIES
Sname
Item
Price
⑨
⑩
⑾
⑿
∙查询具有最大订购数量的订单。
包含
Ono
Item
Quantity
⒀
⒁
⒂
⒃
参考答案:
查询提供的商品价格在1元以上的任何供应商的商品及其价格和供应商名称:
SUPPLIES
Sname
Item
Price
P.
>1.00
查询各类商品的平均价格:
SUPPLIES
Sname
Item
Price
P.G.
P.AVG.ALL.
查询供应商的数目:
SUPPLIES
Sname
Item
Price
P.CNT.UN.ALL._X
其中_X是域变量
查询具有最大订购数量的订单:
包含
Ono
Item
Quantity
┐
P.
_X
>_X
其中_X是域变量
原题:
4.简述关系数据语言可以分为哪几种类型?
参考答案:
关系数据语言可以分为三种类型:
基本关系(通常又称为基本表或基表)、查询表和视图表。
基本表是实际存在的表,它是实际存储数据的逻辑表。
查询表是查询结果对应的表。
视图表则是基本表和其它视图表导出的表,是虚表,不对应实际存储的数据。
原题:
5.关系模型的完整性规则包括哪几类?
参考答案:
关系模型的完整性规则是对关系的某种约束条件,关系模型中可以有三类完整性约束:
实体完整性、参照完整性和用户定义的完整性。
其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为关系的两个不变性,应该由关系系统自动支持。
3关系数据库标准语言SQL
原题:
1.设有关系R和S如图所示:
R
S
A
B
a1
b1
a2
b2
a3
b3
A
C
a1
40
a2
50
a3
55
试用SQL语句实现:
(1)查询属性C>50时,R中与相关联的属性B之值。
(2)当属性C=40时,将R中与之相关联的B值改为b4。
参考答案:
解:
(1)查询属性C>50时,R中与相关联的属性B之值。
SELECTBFROMR,SWHERER.A=S.AANDC>50
(2)当属性C=40时,将R中与之相关联的B值改为b4。
UPDATERSETB='b4'WHEREAIN(SELECTAFROMSWHEREC=40)
原题:
2.已知关系R如下图所示:
R
A
B
C
97
B1
84
97
B2
92
97
B3
98
98
B1
72
98
B2
84
98
B3
95
99
B1
88
99
B2
94
试用SQL语句实现下列操作:
(1)按属性A分组,求出每组中在属性C上的最大值和最小值,且将他们置于视图RVE中。
(2)在视图RVE中查询属性A=“98”的记录。
参考答案:
(1)按属性A分组,求出每组中在属性C上的最大值和最小值,且将他们置于视图RVE中。
CREATEVIEWRVE(A,CMAX,CMIN)
ASSELECTA,MAX(C),MIN(C)
FROMRGROUPBYA
(2)在视图RVE中查询属性A=“98”的记录。
SELECT*FROMRVEWHEREA="98"
原题:
3.已知学生表S和学生选课表SC,其关系模式如下:
S(SNO,SN,SD,PROV)
SC(SNO,CN,GR)
其中,SNO为学号,SN为姓名,SD为系名,RPOV为省名,CN为课程名,GR为分数。
试用SQL语言实现下列操作:
(1)查询“信息系”的学生来自哪些省区。
(2)按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。
参考答案:
(1)查询“信息系”的学生来自哪些省区。
SELECTDISTINCTPROV
FROMS
WHERESD="信息系"
(2)按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。
SELECTSN,GR
FROMS,SC
WHERESD="英语系"ANDCN="计算机系"ANDS.SNO=SC.SNO
ORDERBYGRDESC
原题:
4.图书登记表TS,具有属性:
BNO(图书编号),BC(图书类别),BNA(书名),AU(著者),PUB(出版社)。
按下列要求用SQL语言进行设计:
(1)按图书标号BNO建立TS表的索引ITS。
(2)查询按出版社统计其出版图书的总数。
(3)删除索引ITS。
参考答案:
(1)按图书标号BNO建立TS表的索引ITS。
CREATEINDEXITSONTS(BNO)
(2)查询按出版社统计其出版图书的总数。
SELECTPUB,COUNT(BNO)FROMTSGROUPBYPUB
(3)删除索引ITS。
DROPINDEXITS
原题:
5.简述在SQL中建立索引的意义。
参考答案:
建立索引是加快表的查询速度的有效手段。
可以根据需要在基本表上建立一个或多个索引,从而提高系统的查询效率。
SQL语言支持用户根据应用环节的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。
4关系数据库设计理论
原题:
1.设有关系R和S如图所示:
R
S
A
B
a1
b1
a2
b2
a3
b3
A
C
a1
40
a2
50
a3
55
试用SQL语句实现:
(1)查询属性C>50时,R中与相关联的属性B之值。
(2)当属性C=40时,将R中与之相关联的B值改为b4。
参考答案:
解:
(1)查询属性C>50时,R中与相关联的属性B之值。
SELECTBFROMR,SWHERER.A=S.AANDC>50
(2)当属性C=40时,将R中与之相关联的B值改为b4。
UPDATERSETB='b4'WHEREAIN(SELECTAFROMSWHEREC=40)
原题:
2.已知关系R如下图所示:
R
A
B
C
97
B1
84
97
B2
92
97
B3
98
98
B1
72
98
B2
84
98
B3
95
99
B1
88
99
B2
94
试用SQL语句实现下列操作:
(1)按属性A分组,求出每组中在属性C上的最大值和最小值,且将他们置于视图RVE中。
(2)在视图RVE中查询属性A=“98”的记录。
参考答案:
(1)按属性A分组,求出每组中在属性C上的最大值和最小值,且将他们置于视图RVE中。
CREATEVIEWRVE(A,CMAX,CMIN)
ASSELECTA,MAX(C),MIN(C)
FROMRGROUPBYA
(2)在视图RVE中查询属性A=“98”的记录。
SELECT*FROMRVEWHEREA="98"
原题:
3.已知学生表S和学生选课表SC,其关系模式如下:
S(SNO,SN,SD,PROV)
SC(SNO,CN,GR)
其中,SNO为学号,SN为姓名,SD为系名,RPOV为省名,CN为课程名,GR为分数。
试用SQL语言实现下列操作:
(1)查询“信息系”的学生来自哪些省区。
(2)按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。
参考答案:
(1)查询“信息系”的学生来自哪些省区。
SELECTDISTINCTPROV
FROMS
WHERESD="信息系"
(2)按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。
SELECTSN,GR
FROMS,SC
WHERESD="英语系"ANDCN="计算机系"ANDS.SNO=SC.SNO
ORDERBYGRDESC
原题:
4.图书登记表TS,具有属性:
BNO(图书编号),BC(图书类别),BNA(书名),AU(著者),PUB(出版社)。
按下列要求用SQL语言进行设计:
(1)按图书标号BNO建立TS表的索引ITS。
(2)查询按出版社统计其出版图书的总数。
(3)删除索引ITS。
参考答案:
(1)按图书标号BNO建立TS表的索引ITS。
CREATEINDEXITSONTS(BNO)
(2)查询按出版社统计其出版图书的总数。
SELECTPUB,COUNT(BNO)FROMTSGROUPBYPUB
(3)删除索引ITS。
DROPINDEXITS
原题:
5.简述在SQL中建立索引的意义。
参考答案:
建立索引是加快表的查询速度的有效手段。
可以根据需要在基本表上建立一个或多个索引,从而提高系统的查询效率。
SQL语言支持用户根据应用环节的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。
4关系数据库设计理论
原题:
1.分析关系模式STUDENT(学号,姓名,出生日期,系名,班号,宿舍区),指出其候选关键字,最小依赖集和存在的传递函数依赖。
参考答案:
候选关键字:
学号(每个学生只有唯一的学号)
最小依赖集:
{学号→姓名,学号→出生日期,学号→班号,系名→宿舍区,班号→系名}
存在传递依赖:
学号→姓名→宿舍区,所以学号传递依赖于宿舍区;
班号→姓名→宿舍区,所以有班号传递依赖于宿舍区;
学号→班号→系名,所以有学号传递依赖于系名。
原题:
2.设有一个教学管理数据库,其属性为:
学号(S#),课程号(C#),成绩(G),任课老师(TN),教室所在的系(D)。
这些数据有下列语义:
∙学号和课程号分别与其代表的学生和课程一一对应;
∙一个学生所修的每门课程都有一个成绩;
∙每门课程只有一位任课教师,但每位教师可以有多门课程;
∙教师中没有重名,每个教师只属于一个系。
(1)根据上述语义确定函数依赖集。
(2)如果用上面所有属性组成一个关系模式,那么该关系模式为何种模式?
参考答案:
(1)根据上述语义确定函数依赖集。
F={(S#,C#)→G,C#→TN,TN→D}
(2)如果用上面所有属性组成一个关系模式,那么该关系模式为何种模式?
关系模式为1NF,因为该关系模式的候选关键字为(S#,C#),则非主属性有G,TN和G。
又因为F中有C#→TN,所以存在非主属性TN对候选关键字(S#,C#)的部分依赖。
若新增加一门课程而暂时还没有学生选修时,则因缺少关键字S#值而不断进行插入操作。
若某个教师调离学校要删除其有关信息时,会将不该删除的课程(C#)信息删除。
原题:
3.设有如下图所示的关系R:
课程号
教师名
教师地址
C1
马千里
D1
C2
于军
D1
C3
杨敏
D2
C4
于军
D1
(1)它为第几范式?
为什么?
(2)是否存在删除操作异常?
若存在,则说明是在什么情况下发生的?
(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题的?
参考答案:
(1)它为第几范式?
为什么?
它是2NF。
因为R的候选关键字是课程名,而课程名不依赖于教师名,教师名也不依赖于课程名,教师名→教师地址,所以存在非主属性教师地址对候选关键字课程名的传递函数依赖,因此R不是3NF。
(2)是否存在删除操作异常?
若存在,则说明是在什么情况下发生的?
存在。
当删除某门课程时会删除不该删除的教师的有关信息。
(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题的?
分解为高一级范式如下图所示:
关系R1:
课程号
教师名
C1
马千里
C2
于军
C3
杨敏
C4
于军
关系R2:
教师名
教师地址
马千里
D1
于军
D1
杨敏
D2
原题:
4.试根据下图写出5个关系(物资、供货商、库存、结算、合同)的属性。
参考答案:
物资(物资编号,物资名称,计量单位,单价)
供货商(供货商编号,供货商名称,地址,电话,银行账号,联系人)
库存(物资编号,数量,存放地点)
结算(结算单编号,合同编号,收款银行账号,汇款经手人,汇款日期)
合同(合同编号,供货商编号,总金额,发货日期)
5数据库保护
原题:
1.假设存款余额x=1000元,甲事务取走存款300元,乙事务取走存款200元,其执行时间如下:
事务甲
时间
事务乙
读x
t1
t2
读x
更新x=x-300
t3
t4
更新x=x-200
如何实现这两个事务的并非控制?
参考答案:
如果直接按时间顺序执行甲乙两个事务,则最后的x为800,而不是正确的500。
为此,采用封锁的方法,将甲事务修改为:
WHILE(x已建立排它锁)
{
等待
}
对x建立排它锁
读x
更新x=x-300
释放排它锁
将乙事务修改为:
WHILE(x已建立排它锁)
{
等待
}
对x建立排它锁
读x
更新x=x-200
释放排它锁
原题:
2.在数据库中为什么要有并发控制?
参考答案:
数据库是一个共享资源,它允许多个用户同时并行地存取数据。
若系统对并行操作不加控制,就会存取或存储不正确的数据,破坏数据库的完整性(或称为一致性)。
并发控制的目的,就是要以正确的方式调度并发操作,避免造成各种不一致性,使一个事务的执行不受另一个事务的干扰。
原题:
3.叙述数据库中死锁产生的原因和解决死锁的方法。
参考答案:
封锁可以引起死锁。
解决死锁的常用方法有如下三种:
(1)要求每个事务一次就要将它所需要的数据全部加锁。
(2)预先规定一个封锁顺序,所有的事务都要按这个顺序实行封锁。
(3)允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤销,释放此事务持有的所有的锁,使其它事务能继续运行下去。
原题:
4.怎样进行介质故障的恢复?
参考答案:
在发生介质故障时,磁盘上的物理数据被破坏,这时的恢复操作分为以下几步:
(1)重装转储后援副本,使数据库恢复到转储时的一致状态;
(2)从故障开始,反向阅读日志文件,找出已提交事务标记重做队列;
(3)从起始点开始正向阅读日志文件,根据重做队列的记录,重做所有已完成的事务,将数据库恢复至故障前莫一时刻的一致状态。
原题:
5.简要列举数据库被破坏的可能性和数据管理系统提供的预防和补救措施。
参考答案:
数据库的被破坏主要有以下几个方面:
(1)系统的软、硬件故障,造成数据被破坏。
(2)数据库的并发操作引起数据的不一致性。
(3)自然的或认为的破坏。
(4)对数据库数据的更新操作有误。
针对上述问题,数据库管理系统提供相应的功能:
(1)数据库恢复:
在系统失效后的数据库恢复,配合定时备份数据库,是数据库不丢失数据。
(2)并发控制:
保证多用户能共享数据库,并维护数据的一致性。
(3)安全性保护:
防止对数据库的非法使用,避免数据的泄漏、篡改或破坏。
(4)完整性保护:
保证数据的正确性和一致性。
6数据库设计
原题:
1.设有商业销售记账数据库。
一个顾客(顾客姓名,单位,电话号码)可以买多种商品,一种商品(商品名称,型号,单价)供应多个顾客。
试画出对应的E-R图。
参考答案:
原题:
设有如下实体:
学生:
学号、单位、姓名、性别、年龄、选修课程名
课程:
编号、课程名、开课单位、任课教师号
教师:
教师号、姓名、性别、职称、讲授课程编号
单位:
单位名称、电话、教师号、教师名
上述实体中存在如下关系:
(1)一个学生可以选修多门课程,一门课程可为多个学生选修;
(2)一个教师可讲授多门课程,一门课程可为多个教师讲授;
(3)一个单位可有多个教师,一个教师只能属于一个单位。
试完成如下操作:
2-1分别设计学生选课和教师任课两个局部信息的结构E-R图。
参考答案:
学生选课局部E-R图:
教师任课局部E-R图:
原题:
2-2.将上述设计完成的E-R图合并成一个全局E-R图:
参考答案:
合并的全局E-R图:
为避免图形复杂,下面给出各实体属性:
单位:
单位名、电话
学生:
学号、姓名、性别、年龄
教师:
教师号、姓名、性别、职称
课程:
编号、课程名
原题:
2-3.将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。
参考答案:
单位(单位名、电话)
学生(学号、姓名、性别、年龄、单位名)
教师(教师号、姓名、性别、职称、单位名)
课程名(课程编号、课程名、单位名)
讲授(教师号、课程编号)
选修(学号、课程编号)
7基于Web数据库技术概述
原题:
1.简述URL的组成。
参考答案:
URL由如下项组成:
(1)检索协议;
(2)Internet节点
(3)为HTTP客户服务的资源文件。
原题:
2.请简述ActiveX的优缺点。
参考答案:
ActiveX的优点有:
(1)ActiveX控件这种分布式对象技术与其它同类技术相比,最大优点在于保护开发者以前的投资。
(2)ActiveX又是一种开放的技术,它包容了现有的标准又鼓励第三方的参与。
ActiveX的缺点有:
(1)ActiveX控件体积还过于庞大,用户浏览时进行下载速度较慢。
(2)支持ActiveX的平台还只限于Windows系列,Unix和Macintosh对ActiveX的支持还在开发阶段,其它平台的支持也需要时间,ActiveX控件的平台无关性不如Java。
原题:
3.简述ASP文件的几个组成部分。
参考答案:
ASP文件有如下几个组成部分:
(1)文本;
(2)HTML标记,可单独使用或嵌入在各个ASP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 互联网 数据库 网上 作业