数据库模拟题综合整理Word格式文档下载.docx

上传人:b****5 文档编号:20359687 上传时间:2023-01-22 格式:DOCX 页数:15 大小:97.46KB
下载 相关 举报
数据库模拟题综合整理Word格式文档下载.docx_第1页
第1页 / 共15页
数据库模拟题综合整理Word格式文档下载.docx_第2页
第2页 / 共15页
数据库模拟题综合整理Word格式文档下载.docx_第3页
第3页 / 共15页
数据库模拟题综合整理Word格式文档下载.docx_第4页
第4页 / 共15页
数据库模拟题综合整理Word格式文档下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

数据库模拟题综合整理Word格式文档下载.docx

《数据库模拟题综合整理Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据库模拟题综合整理Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。

数据库模拟题综合整理Word格式文档下载.docx

createtable订购单(

仓库号char(3)notnullprimarykey,

城市char(30),

面积intcheck(面积>

0and面积<

1000))

3.给订购单表的增加“订购金额”字段,类型为money

altertable订购单addcolumn订购金额money

4.回收名为wang的用户对订购单关系的更新和删除权限

revokeupdate,deleteon订购单fromwang

5.检索在北京仓库工作的职工信息。

SELECT*FROM仓库,职工WHERE仓库.仓库号=职工.仓库号and地址=’北京’

6.检索发给供应商S6的订购单号。

SELECT订购单号FROM订购单WHERE供应商号=’S6’

7.检索出有最高工资的职工所有的仓库信息。

SELECT*FROM仓库WHERE仓库号in

(SELECT仓库号from职工where工资=(selectMAX(工资)FROM职工))

8.检索出每个城市的供应商个数。

SELECT地址,COUNT(*)FROM供应商GROUPBY地址

9.插入一个供应仓库记录,仓库号为WH1,城市为南宁,面积为560。

INSERTINTO仓库VALUES(‘WH1’,'

南宁'

560)

 

10.定义一个视图V_bj,包含北京仓库的职工信息

createviewv_bjas

select*from职工,仓库

where职工.仓库号=仓库.仓库号

and城市=’北京’

四、综合应用题(共20分)

1.(12分)设大学环境有学生实体,其属性有学号,姓名,性别,年龄和住址;

有实体类型系,有属性系编号,系名称,办公室地址,电话号码;

并有教师实体,有属性教师编号,姓名,性别,年龄,职称.一个学生只能注册一个系,有入学日期;

一个教师必须且只能为一个系工作,有任职日期

1绘出上述环境的E—R图,该图应该表明关键字属性,并注明联系类型,如M:

N.

2.将E—R图转换成对应的关系模式,指出每个关系的主键和外键

3.设计一个SQL查询语句,显示教师数大于12的系的系名称,教师人数。

1.E-R图如下:

(5分)

2.转换后有三个实体关系,两个联系因为均属一对多联系,故均在多的一边加上一的主键作为外键,(5分)

系(系编号,系名称,办公室地址,电话,……)

教师(教师编号,姓名,性别,年龄,职称,系编号,任职日期,……)

学生(学号,姓名,性别,年龄,住址,系编号,入学日期,……)

3.(2分)

select系名称,count(教师编号)

from系,教师

where系.系编号=教师.系编号

groupby系名称

havingcount(教师编号)>

12

2.(8分)现有如下关系模式:

R(U,F),U={A,B,C,D,E},F={AB→E,B→C,C→D}

问:

1.该关系模式满足2NF吗?

为什么?

2.如果将关系模式R分解为:

R1(A,B,E)

R2(B,C,D)

指出关系模式R2的码,并说明该关系模式最高满足第几范式?

(在1NF~BCNF之内)。

3.将关系模式R分解到BCNF。

(1)R不属于第2NF(1分),因为主关键字AB,存在部分函数依赖BC;

(1分)

 

(2)R2的码是B(1分),最高满足2NF(1分),因为存在非主属性D对主属性B的传递依赖,

故不满足3NF(1分)

 (3)分解R为第三范式:

  R1(A,B,E)

  R2(B,C)

R3(C,D)(2分)

二、填空题(每空1分,共15分)

1、为保证关系模式分解的正确性必须遵循的两个原则分别是:

_无损连接性___性和_保持函数依赖性_。

3.在SQLServer服务器中,发行服务器扮演的是“存储和转发”的角色,在发行服务器上有发行数据库,它存储来出出版服务器的出版数据,并将这些数据转发到订阅服务器

4、现实世界中,实体之间联系的类型有如下几种_一对一联系、一对多联系、多对多联系。

5.用关系(表格数据)表示数据与数据之间联系的模型称之为_关系模型__。

6.SQLServer有的三种备份类型是全备份__、差额备份、表备份。

7.SQLServer提供了三种安全管理模式,分别是标准主证模式、集成认证、混合认证模式。

8.收回授权的SQL命令为_REVOKE__.

9.无损连接是指_分解后的关系经过自然连接可以恢复成原来的关系_

10.要实现集合的并操作,可以用UNION_操作。

11.为了保证关系的主关键字关系的实体完整性,最常用的手段是__主键约束

__。

三、问答题(每小题5分,共10分)1.什么是数据完整性?

关系数据库中数据完整性约束的分类。

 

(1)数据的完整性是指存储在数据库中的数据的一致性和正确性(1分)。

关系模型数据完整性的分类有

·

域完整性:

列的值域的完整性。

实体完整性:

表中记录的完整性。

引用完整性:

被引用表中的主关键字和引用表中的外部主关键字之间的关系。

用户自定义完整性:

(1分)

2. 什么是关系?

关系有什么性质?

一个关系是一个二维表,表中的每一行也即元组保存属于事物或某些事物的一部分的数据,相当于一个记录,表的每一列包含关于属性的数据。

关系应满足以下性质:

a.表格中的每一列都是不可再分的基本属性(1分)

b.各列被指定一个相异的名字(1分)

c.各行相异,不允许重复(1分)

d.行、列次序均无关(1分)

四、程序设计题(每小题4分,共40分)

现有如下图所示的关系数据库

(一)用关系代数表达式实现下列1—2小题

1.检索北京的供应商的名称

π供应商名(σ地址=‘北京’(供应商))

2.检索和北京的所有供应商都有联系的职工信息

R1=σ地址='

北京'

(供应商)

R2=Π供应商号(R1)

R3=Π职工号,供应商号(订购单)

R4=R3÷

R2

R5=R4职工

R6=Π工资(R5)

(二)用SQL语言实现下列3—10小题:

3.分析订购单表的各属性及取值范围,写出建立职工表的SQL语句

createtable订购单

 (职工号char(3),

  供应商号char(3),

  订购单号char(6)notnull,

  订购日期datetime)

4.把对职工关系的查询权限给用户zhang

grantselecton职工tozhang

5.检索在广州的供应商信息

select*from供应商where地址='

广州'

6.插入一个新的职工元组(WH3,E7,280)

insertinto职工values('

WH3'

'

E7'

280)

7.删除仓库号为"

WH2"

的仓库.

deletefrom仓库where仓库号='

WH2'

8.给低于所有职工平均工资的职工提高5%的工资

update职工set工资=工资*1.05

where工资<

(selectavg(工资)from职工)

9.求所有职工的工资都多于1210的仓库的平均面积。

selectavg(面积)from仓库

where仓库号notin(select仓库号from职工

where工资<

=1210)

10.检索出与职工E1、E3都有联系的北京的供应商信息

select*from供应商

where地址='

and供应商号in

(select供应商号from订购单where职工号='

E1'

and供应商号in

E3'

五、应用题(每小题5分,共10分).

1、编写存储过程,要求存储过程带一个参数,该存储过程可以查询指定城市的职工工资。

并执行该存储过程,查询指定城市在北京的职工工资。

createprocedureuspGetSalary(1分)

@citychar(10)(1分)

As

Select职工号,工资

from职工

Where职工号in

(select职工号from仓库where城市=@city)(2分)

ExecuteuspGetSalary’北京’

2、有关系模式R(U,F),属性集U={A,B,C,D,E},函数依赖集合F={AB→C,C→D,B→E},请回答:

关系R的主关键字是什么?

R最高属于第几范式?

说明理由;

将R转换为第三范式。

(1)R最高属于第一范式,因为存在部分函数依赖;

(2分)

 

(2)R的候选码是:

(A,B)(A,C)(1分)

(2分)

  R1(A,B,C)

  R2(C,D)

  R3(B,E)

六、综合题(10分)

完成如下设计:

请设计某单位的库存管理数据库系统,系统要求如下:

存储供应商信息,库存零件信息,仓库信息,仓库管理员的信息。

该单位有多个仓库,每个仓库可以存放多种零件,一种零件可以存放在多个仓库中;

每个仓库只有一个仓库管理员,一个仓库管理员只能管理一个仓库;

每个供应商可以供应多种零件,同一种零件可以由多个供应商供应。

要求完成如下设计工作:

(1)画出该系统的E-R模型图,包括实体及实体之间的联系,并标出:

(a)实体的主要属性,(b)实体之间联系的主要属性;

(2)把E-R模型图转换为关系表(标明主关键字)。

(3)请定义一个视图,该视图的列信息包括零件名称以及零件所在仓库名称的信息。

E-R图如下:

(3分)

*实体关系表,下划线为主码:

(1)供应商表:

(供应商号,供应商名,……………)

(2)零件表:

(零件号,零件名,……………)

(3)仓库表:

(仓库号,仓库名,管理员号,…………)

(4)仓库管理员表:

*两个多对多的联系转换为两个关系表:

(1)供应表:

(供应商号,零件号,供应量,……………)

(2)存放表:

(仓库号,零件号,存放量,……………)

*定义一个视图,该视图的列信息包括零件名称以及零件所在仓库名称,

SQL语句如下:

CREATEVIEWpart

AS

SELECT零件名,仓库名

FROM零件表,仓库表,存放表

WHERE零件表.零件号=存放表.零件号

AND仓库表.仓库号=存放表.仓库号

1)检索在北京的供应商的名称。

SELECT*FROM供应商WHERE地址=’北京’

2)检索发给供应商S6的订购单号。

SELECT订购单号FROM订购单WHERE供应商号=’S6’

3)检索出职工E6发给供应商S6的订购单信息。

SELECT*FROM订购单WHERE供应商号=’S6’AND职工号=’E6’

4)检索出向供应商S3发过订购单的职工的职工号和仓库号。

SELECT职工号,仓库号FROM职工WHERE职工号IN

(SELECT职工号FROM订购单WHERE供应商号=’S3’)

5)检索出目前与S3供应商没有联系的职工信息。

SELECT*FROM职工WHERE职工号NOTIN

6)检索出目前没有任何订购单的供应商信息。

SELECT*FROM供应商WHERENOTEXISTS

(SELECT*FROM订购单WHERE供应商号=供应商.供应商号)

7)检索出和职工E1、E3都有联系的北京的供应商信息。

SELECT*FROM供应商WHERE供应商号IN

(SELECT供应商号FROM订购单WHERE职工号=’E1’)

AND供应商号IN

(SELECT供应商号FROM订购单WHERE职工号=’E3’)

8)检索出目前和华通电子公司有业务联系的每个职工的工资。

SELECT职工号,工资FROM职工WHERE职工号IN

(SELECT职工号FROM订购单WHERE供应商号IN

(SELECT供应商号FROM供应商WHERE供应商名=’华通电子公司’))

9)检索出与工资在1220元以下的职工没有联系的供应商的名称。

SELECT供应商名FROM供应商WHERE供应商号IN

(SELECT供应商号FROM订购单WHERE职工号NOTIN

(SELECT职工号FROM职工WHERE工资<

1220))

10)检索出向S4供应商发出订购单的仓库所在的城市。

SELECT城市FROM仓库WHERE仓库号IN

(SELECT仓库号FROM职工WHERE职工号IN

(SELECT职工号FROM订购单WHERE供应商号=’S4’))

11)检索出在上海工作并且向S6供应商发出了订购单的职工号。

SELECT职工号FROM职工WHERE仓库号IN

(SELECT仓库号FROM仓库WHERE城市=’上海’)AND职工号IN

(SELECT职工号FROM订购单WHERE供应商号=’S6’))

12)检索出在广州工作并且只向S6供应商发出了订购单的职工号。

(SELECT仓库号FROM仓库WHERE城市=’广州’)AND职工号IN

(SELECT职工号FROM订购单WHERE供应商号=’S6’)AND职工号NOTIN

(SELECT职工号FROM订购单WHERE供应商号!

=’S6’)

13)检索出由工资多于1230元的职工向北京的供应商发出的订购单号。

SELECT订购单号FROM订购单WHERE职工号IN

(SELECT职工号FROM职工WHERE工资>

1230)AND供应商号IN

(SELECT供应商号FROM供应商WHERE地址=’北京’)

14)检索出仓库的个数。

SELECTCOUNT(*)FROM仓库

15)检索出有最大面积的仓库信息。

SELECT*FROM仓库WHERE面积=(SELECTMAX(面积)FROM仓库)

16)检索出所有仓库的平均面积。

SELECTAVG(面积)FROM仓库

17)检索出向S4供应商发出订购单的那些仓库的平均面积。

SELECTAVG(面积)FROM仓库WHERE仓库号IN

18)检索出每个城市的供应商个数。

SELECT地址,COUNT(*)FROM供应商GROUPBY地址

19)检索出每个仓库中工资多于1220元的职工个数。

SELECT仓库号,COUNT(*)FROM职工WHERE工资>

1220GROUPBY仓库号

20)检索出和面积最小的仓库有联系的供应商的个数。

SELECTCOUNT(*)FROM供应商WHERE供应商号IN

(SELECT供应商号FROM订购单WHERE职工号IN

(SELECT职工号FROM职工WHERE仓库号IN

(SELECT仓库号FROM仓库WHERE面积=

(SELECTMIN(面积)FROM仓库))))

21)检索出工资低于本仓库平均工资的职工信息。

SELECT*FROM职工outWHERE工资<

(SELECTAVG(工资)FROM职工inneWHERE仓库号=out.仓库号)

第三章习题

2.设有关系模式R(U,F),U={A,B,C,D,E},F={AB→E,DE→B,B→C,C→E,E→A}

(1)计算所有函数依赖左部关于函数依赖集F的属性集闭包;

(AB)+={A,B,C,E}

(DE)+={A,B,C,D,E}

B+={A,B,C,E}

C+={A,C,E}

E+={A,E}

(2)确定关系模式R上的所有侯选关键字;

DE

(3)求F的所有最小覆盖。

Fm=F-{AB->

E}

3.假设有一个名为“参加”的关系,该关系有属性:

职工(职工名)、工程(工程名)、时数(花费在工程上的小时数)和工资(职工的工资);

一个“参加”记录描述一个职工花费在一个工程上的总时数和他的工资;

另外,一个职工可以参加多个工程,多个职工可以参加同一个工程。

请回答如下各问题:

用A、B、C、D分别代表属性职工、工程、时数和工资,则:

(1)确定这个关系的关键字;

AB

(2)找出这个关系中的所有函数依赖;

AB->

C,A->

D

(3)指出这个关系上的哪些函数依赖会带来操作异常现象;

D对关键字AB的部分函数依赖可能会带来如下问题:

数据冗余:

一个职工参加多个工程,则职工的工资值会重复;

更新异常:

当改变职工的工资时,可能会只修改了一部分,从而造成数据不一致;

插入异常:

当一个职工尚未承担工程,但要插入职工信息(如工资)则不允许(因为没有完整的关键字);

删除异常:

当某个工程结束,删除工程信息时,可能会将职工信息(如工资)一同删除(如果职工只参加了一项工程)。

(4)这个关系是第几范式关系?

1NF

(5)计算该关系上函数依赖集的最小覆盖;

Fm={AB->

C,A->

D}

(6)将该关系分解成尽可能高的范式,并指明是第几范式?

分解为R1(A,B,C)和R2(A,D)

结果为4NF

4.一个关系有4个字段A、B、C、D,这里A和B构成复合关键字,问满足下列函数依赖的关系是第几范式?

(1)A、B、C、D都函数依赖于AB。

BCNF或4NF

(2)A、B、C、D都函数依赖于AB,而D还函数依赖于C。

2NF

(3)A、B、C、D都函数依赖于AB,而D还函数依赖于B。

(4)A、B、C、D都函数依赖于AB,而B还函数依赖于C。

3NF

4.设有关系模式R(A,B,C,D,E),并有函数依赖{AB→D,AC→E,BC→D,D→A,E→B},现将R分解成关系模式S(A,B,C)和其他一些关系模式,请给出在关系模式S上成立的函数依赖。

AC→B,BC→A

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

当前位置:首页 > 幼儿教育 > 育儿理论经验

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

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