你的答案:
(1)文件系统与数据库之间的区别
①文件系统是将数据长期保存在外存上,数据库系统则用数据库统一存储数据;
②文件系统中程序和数据有一定的联系,二数据库系统中程序和数据的分离;
③文件系统用操作系统中的存取方法对数据进行管理,数据库系统则用DBMS统一管理和控制数据;
④文件系统实现以文件为单位的数据共享,而数据库系统实现以记录和字段为单位的数据共享。
(2)文件与数据库系统之间的联系
①均为数据组织的管理技术;
②均为数据管理软件管理数据,程序与数据之间用存取方法进行转换;
③数据库系统是在文件系统的基础上发展起来的。
|
你的答案:
一个设计优良的DBMS,应该具有友好的用户界面、比较完备的功能、较高的运行效率、清晰的系统结构和开放性。所谓开放性是指数据库设计人员能够根据自己的特殊需要,方便地在一个DBMS中加入一些新的工具模块,这些外来的工具模块可以与该DBMS机密结合,一起运行。
第二章
原题:
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
R2=R∪S
A |
B |
C |
a1 |
b1 |
c1 |
a1 |
b2 |
c2 |
a3 |
b2 |
c1 |
a1 |
b3 |
c2 |
R3=R∩S
|
原题:
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岁以上的患者;
-
找出所有的主任医师;
-
查找王林医师的所有病人;
-
找到刘戈主治医师的相关信息。
|
你的答案:1.年龄在35岁以上的患者:
∏姓名(σ年龄>35(患者) )
2.找出所有的主任医师:
∏姓名(σ职称=[主任医师](医生) )
3.查找王林医师的所有病人:
∏患者姓名(σ姓名=’王林’ (医生?患者))
4.找到刘戈主治医师的相关信息:
∏姓名,职称,…,特长(σ患者姓名=’刘戈’ (医生?患者))
|
原题:
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
|
⒀
|
⒁
|
⒂
|
⒃
|
|
你的答案:
①P.
④﹥1.00
⑦P.G.
⑧AVG.ALL.
⑩P.CNT.UN.ALL._X
13 ﹁
14 P.
16 _X ﹥_X
|
原题: 4.简述关系数据语言可以分为哪几种类型? |
你的答案:关系数据语言可以分为三种类型:基本关系(通常又称为基本表或基表)、查询表和视图表。
基本表是实际存在的表,它是实际存储数据的逻辑表。
查询表是查询结果对应的表。
视图表则是基本表和其它视图表导出的表,是虚表,不对应实际存储的数据。
|
原题: 5.关系模型的完整性规则包括哪几类? |
你的答案:关系模型的完整性规则是对关系的某种约束条件,关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为关系的两个不变性,应该由关系系统自动支持。
第三章
原题:
1.设有关系R和S如图所示:
试用SQL语句实现:
(1)查询属性C>50时,R中与相关联的属性B之值。
(2)当属性C=40时,将R中与之相关联的B值改为b4。
|
你的答案:
(1)SELECT B FROM R, S WHERE R.A=S.A AND C>50
(2)UPDATE R SET B=’b4’ WHERE A IN (SELECT A FROM S WHERE C=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)CREATE VIEW RVE (A, CMAX, CMIN)
AS SELECT A, MAX(C), MIN(C)
FROM R GROUP BY A
(2)SELECT * FROM RVE WHERE A="98"
|
原题: 3.已知学生表S和学生选课表SC,其关系模式如下:
S(SNO, SN, SD, PROV)
SC(SNO, CN, GR)
其中,SNO为学号,SN为姓名,SD为系名,RPOV为省名,CN为课程名,GR为分数。
试用SQL语言实现下列操作:
(1)查询“信息系”的学生来自哪些省区。
(2)按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。
|
你的答案:
(1)SELECT DISTINCT PROV
FROM S
WHERE SD="信息系"
(2)SELECT SN, GR
FROM S, SC
WHERE SD="英语系" AND CN="计算机系" AND S.SNO=SC.SNO
ORDER BY GR DESC
|
原题:4.图书登记表TS,具有属性:BNO(图书编号),BC(图书类别),BNA(书名),AU(著者),PUB(出版社)。按下列要求用SQL语言进行设计:
(1)按图书标号BNO建立TS表的索引ITS。
(2)查询按出版社统计其出版图书的总数。
(3)删除索引ITS。
|
你的答案:
(1)CREATE INDEX ITS ON TS(BNO)
(2)SELECT PUB, COUNT(BNO) FROM TS GROUP BY PUB
(3)DROP INDEX ITS
|
原题:5.简述在SQL中建立索引的意义。
|
你的答案:
建立索引是加快表的查询速度的有效手段。可以根据需要在基本表上建立一个或多个索引,从而提高系统的查询效率。
SQL语言支持用户根据应用环节的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。
第四章
原题:
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 |
于军 |
D2 |
杨敏 |
D3 |
|
原题: 4.试根据下图写出5个关系(物资、供货商、库存、结算、合同)的属性。
http://www.zk365.com/ClassPlatform/zuoye/database07/exercises/ex04/IMAGES/Sample97.gif
|
你的答案:
物资(物资编号,物资名称,计量单位,单价)
供货商(供货商编号,供货商名称,地址,电话,银行账号,联系人)
库存(物资编号,数量,存放地点)
结算(结算单编号,合同编号,收款银行账号,汇款经手人,汇款日期)
合同(合同编号,供货商编号,总金额,发货日期)
第五章
第五章
原题:
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)完整性保护:保证数据的正确性和一致性。
第六章
原题:
1.设有商业销售记账数据库。一个顾客(顾客姓名,单位,电话号码)可以买多种商品,一种商品(商品名称,型号,单价)供应多个顾客。试画出对应的E-R图。 |
你的答案:
http://www.zk365.com/ClassPlatform/eweb/UploadFile/20159132179352.jpg
|
原题:设有如下实体:
学生:学号、单位、姓名、性别、年龄、选修课程名
课程:编号、课程名、开课单位、任课教师号
教师:教师号、姓名、性别、职称、讲授课程编号
单位:单位名称、电话、教师号、教师名
上述实体中存在如下关系:
(1)一个学生可以选修多门课程,一门课程可为多个学生选修;
(2)一个教师可讲授多门课程,一门课程可为多个教师讲授;
(3)一个单位可有多个教师,一个教师只能属于一个单位。
试完成如下操作:
2-1分别设计学生选课和教师任课两个局部信息的结构E-R图。
|
你的答案:
http://www.zk365.com/ClassPlatform/eweb/UploadFile/2015913213227467.jpg
|
原题:2-2.将上述设计完成的E-R图合并成一个全局E-R图:
|
你的答案:
http://www.zk365.com/ClassPlatform/eweb/UploadFile/2015913215647786.jpg
|
原题:2-3.将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。
|
你的答案:
单位(单位名、电话)
学生(学号、姓名、性别、年龄、单位名)
教师(教师号、姓名、性别、职称、单位名)
课程名(课程编号、课程名、单位名)
讲授(教师号、课程编号)
选修(学号、课程编号)
第七章
原题: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脚本单元中,以“<”和“>”为定界符;
(3)VBScript或(JScript)语句,可单独使用或嵌入在各个ASP脚本单元中,以(SCRIPT和/SCRIPT)为界定符,通过对“RUN AT”属性的设定来决定是否在服务器端运行;
(4)ASP脚本命令:可单独使用或包含在此和内,以“
喜欢
0
赠金笔
加载中,请稍候......
| | | | | | |