数据库系统概论作业Word下载.docx
- 文档编号:21740681
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:25
- 大小:659.84KB
数据库系统概论作业Word下载.docx
《数据库系统概论作业Word下载.docx》由会员分享,可在线阅读,更多相关《数据库系统概论作业Word下载.docx(25页珍藏版)》请在冰豆网上搜索。
10、简述数据库系统得三级模式与两级映像。
答:
数据库系统得三级模式结构就是指数据库系统就是由外模式、模式与内模式三级构成。
模式也称逻辑模式,就是数据库中全体数据得逻辑结构与特征得描述,就是所有用户得公共数据视图。
模式实际上就是数据库数据在逻辑级上得视图,一个数据库只有一个模式,数据库模式以某一种数据模型为基础,统一综合地考虑了所有用户得需求,并将这些需求有机地结合成一个逻辑整体。
外模式也称子模式或用户模式,它就是数据库用户(包括应用程序员与最终用户)能够瞧见与使用得局部数据得逻辑结构与特征得描述,就是数据库用户得数据视图,就是与某一应用有关得数据购逻辑表示。
外模式通常就是模式得子集。
一个数据库可以有多个外模式。
内模式也称存储模式,一个数据库只有一个内模式,它就是数据物理结构与存储方式得描述,就是数据在数据库内部得表示方式
第二章 关系数据库
1、设有如下图所示得关系R,W与D:
计算下列代数表达式得结果:
(1)R1=πY,T(R)
(2)R2=бp>
5^T=’e’(R)
(3)R3=(RW)
(4)R4=R÷
D
2、设有如下图所示得关系S,SC,C:
关系S
S#
SNAME
AGE
SEX
1
李强
23
男
2
刘丽
22
女
3
张友
关系C
C#
CNAME
TEACHER
K1
C语言
王华
K5
数据库原理
程军
K8
编译原理
关系SC
GRADE
83
85
92
90
84
80
请用关系代数表达式表示下列查询语句:
(1)检索“程军”老师所授课程得课程号(C#)与课程名(CNAME)。
(2)检索“李强”同学不学课程得课程号。
(3)检索既选修了K1课程,也选修了K5课程得学生学号(S#)。
(4)检索选修了课程表中得全部课程得学生姓名(SNAME)。
(5)检索选修课程名为“C语言”得学生学号(S#)与姓名(SNAME)。
3.在关系中,“元数”(arity)就是指(A)
(A).行数(B).元组个数(C).关系个数(D).属性个数
4.在关系中,“基数”(cardinality)就是指(A)
(A).列数(B).元组个数(C).关系个数(D).属性个数
5.设W=RS,且W、R、S得元组个数分别为p、m、n,那么三者之间满足( D )
(A).p<(m+n) (B).p≤(m+n)
(C).p<(m×
n) (D).p≤(m×
n)
6.下列式子中,不正确得就是(D )
(A).R-S=R-(R∩S)(B).R=(R-S)∪(R∩S)
(C).R∩S=S-(S-R)(D).R∩S=S-(R-S)
7.如果两个关系没有公共属性,那么其自然联接操作(A)
(A).转化为笛卡尔积操作(B).转化为联接操作
(C).转化为外部并操作(D).结果为空关系
8、一个关系只有一个( D )
(A)、候选码 (B)、外码
(C)、超码 (D)、主码
9、下面得选项不就是关系得基本特征( A )
(A)、不同得列有不同得数据类型 (B)、不同得列有不同得列名
(C)、与行得次序无关 (D)、与列得次序无关
第三章SQL语言
有两个基本表:
表EMP(ENO,ENAME,SALARY,DNO)
其属性分别表示职工得工号、姓名、工资与所在部门得编号
表DEPT(DNO,DNAME)
其属性分别表示部门得编号与部门名
1、有一SQL语句:
SELECTDNO,COUNT(DISTINCTENO)
FROM EMP
GROUPBY DNO;
该SQL语句实现了以下哪个功能?
(C)
(A).统计职工得总人数
(B).统计每一部门得职工人数
(C).统计职工服务得部门数目
(D).统计每一职工服务得部门数目
2.有一个SQL语句:
SELECTENO,ENAME
FROMEMP
WHEREDNONOTIN
(SELECTDNO
FROMDEPT
WHEREDNAME='
金工车间'
;
其等价得关系代数表达式就是:
(C)
(A).πENO,ENAME(бDNAME≠'
(EMP⋈DEPT))
DNAME≠'
(B).πENO,ENAME(EMP⋈DEPT)
(C).πENO,ENAME(EMP)-πENO,ENAME(бDNAME='
(D).πENO,ENAME(EMP)-πENO,ENAME(бDNAME≠'
3.有一个SQL语句:
UPDATEEMP
SETSALARY=SALARY*1、05
WHEREDNO='
D6'
ANDSALARY<
(SELECTAVG(SALARY)
FROMEMP);
其等价得修改语句为(C)
(A).为工资低于D6部门平均工资得所有职工加薪5%
(B).为工资低于整个企业平均工资得职工加薪5%
(C).为在D6部门工作、工资低于整个企业平均工资得职工加薪5%
(D).为在D6部门工作、工资低于本部门平均工资得职工加薪5%
4.SQL中,谓词EXISTS可用来测试一个集合就是否(C)
(A).有重复元组(B).有重复得列名
(C).为非空集合(D).有空值
5.SQL中,与“NOTIN”等价得操作符就是(B)
(A).=SOME(B).<
>
SOME
(C).=ALL (D).<
ALL
6、下列关于索引得叙述,正确得就是(A)。
(A)、可以根据需要在基本表上建立一个或多个索引,从而提高系统得查询效率。
(B)、一个基本表最多只能有一个索引。
(C)、建立索引得目得就是为了给数据表中得元素指定别名,从而使别得表也可以引用这个元素。
(D)、一个基本表至少要存在一个索引。
7、下面列出得关于视图得条目中,不正确得就是(C)。
(A)、视图就是外模式
(B)、视图就是虚表
(C)、使用视图可以加快查询语句得执行速度
(D)、使用视图可以简化查询语句得编写
8、设数据库中有三个关系:
职工表EMP(E#,ENAME,AGE,SEX,ECITY),
其属性分别表示职工工号、姓名、年龄、性别与籍贯。
工作表WORKS(E#,C#,SALARY),
其属性分别表示职工工号、工作得公司编号与工资。
公司表P(C#,CNAME,CITY),
其属性分别表示公司编号、公司名称与公司所在城市。
请写出完成下列操作得SQL语句:
①用CREATETABLE语句创建上述三个表,需定义出各表得主键与外键。
解:
①CREATETABLEEMP
(E#CHAR(4)NOTNULL,ENAMECHAR(8)NOTNULL,AGES
MALLINT,SEXCHAR
(1),ECITYCHAR(20),PRIMARYKEY(E#))
CREATETABLEP
(C#CHAR(4)NOTNULL,
CNAMECHAR(20)NOTNULL,CITYCHAR(20),PRIMARYKEY(
C#));
CREATETABLEWORKS
(E#CHAR(4)NOTNULL,C#CHAR(4)NOTNULL,SALARYS
MALLINT,PRIMARYKEY(E#,C#),
FOREIGNKEY(E#)REFERENCESEMP(E#),FOREIGNKEY(C#)RE
FERENCESP(C#));
②检索超过50岁得男职工得工号与姓名。
SELECTE#,ENAME
FROMEMP
WHEREAGE>
50ANDSEX='
M'
;
③假设每个职工只能在一个公司工作,检索工资超过1000元得男性职工工号与姓名。
SELECTEMP、E#,ENAME
FROMEMP,WORKS
WHEREEMP、E#=WORKS、E#ANDSALARY>
1000;
④假设每个职工可在多个公司工作,检索在编号为C4与C8公司兼职得职工工号与姓名。
SELECTA、E#,A、ENAME
FROMEMPA,WORKSB,WORKSCWHEREA、E#=B、E#ANDB、E#
=C、E#ANDB、C#='
C4'
ANDC、C#='
C8'
⑤检索在“联华公司”工作、工资超过1000元得男性职工得工号与姓名。
FROMEMPA,WORKSB,PCWHEREA、E#=B、E#ANDB、C#=
C、C#
ANDCNAME='
联华公司'
ANDSALARY>
1000ANDSEX='
⑥假设每个职工可在多个公司工作,检索每个职工得兼职公司数目与工资总数,查询结果显示为(E#,NUM,SUM_SALARY),分别表示工号、兼职得公司数目与工资总数。
SELECTE#,COUNT(C#)ASNUM,SUM(SALARY)ASSUM_SAL
ARY
FROMWORKS
GROUPBYE#;
⑦工号为E6得职工在多个公司工作,试检索至少在E6职工兼职得所有公司工作得职工工号。
SELECTX、E#FROMWORKSX
WHERENOTEXISTS
(SELECT*
FROMWORKSYWHEREE#='
E6'
ANDNOTEXISTS
FROMWORKSZWHEREZ、E#=X、E#
ANDZ、C#=Y、C#));
⑧检索联华公司中低于本公司平均工资得职工工号与姓名。
C、C#ANDCNAME='
ANDSALARY<
(SELECTAVG(SALARY)
FROMWORKS,P
WHEREWORKS、C#=P、C#ANDCNAME='
);
⑨在每一公司中为50岁以上职工加薪100元(若职工为多个公司工作,可重复加)。
UPDATEWORKS
SETSALARY=SALARY+100
WHEREE#IN(SELECTE#FROMEMPWHEREAGE>
50);
⑩在EMP表与WORKS表中删除年龄大于60岁得职工有关元组。
DELETEFROMWORKS
60);
DEL
ETEFROMEMP
60;
第四章数据库安全性
1.以下(D)不属于实现数据库安全性得主要技术与方法。
(A)、存取控制技术(B)、视图技术
(C)、审计技术(D)、出入机房登记与加锁
2.把对关系SC得GRADE属性得修改权授予用户ZHAO得SQL语句就是(C)。
(A)、GRANTGRADEONSCTOZHAO
(B)、GRANTUPDATEONSCTOZHAO
(C)、GRANTUPDATE(GRADE)ONSCTOZHAO
(D)、GRANTUPDATEONSC(GRADE)TOZHAO
3.保护数据库、防止XX得或不合法得使用造成得数据泄露、更改破坏。
这就是数据库得(A)。
(A)、安全性(B)、完整性
(C)、并发控制(D)、恢复
4.今有两个关系模式:
(1)职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;
部门号为外码;
(2)部门(部门号,名称,经理名,地址,电话),其中部门号就是主码;
请用SQL语言得GRANT语句(加上视图机制)完成以下授权定义:
用户杨兰具有SELECT每个部门得职工最高工资,最低工资,平均工资得权力,但她不能查瞧每个人得工资。
CREATEVIEW部门工资AS
SELECT部门、名称,MAX(工资),MIN(工资),AVG(工资)
FROM职工,部门
WHERE职工、部门号=部门、部门号
GROUPBY职工、部门号
GRANTSELECTON部门工资
TO杨兰;
第五章数据库完整性
1.关于主码约束以下说法错误得就是(c)
A.一个表中只能设置一个主码约束
B.允许空值得字段上不能定义主码约束
C.允许空值得字段上可以定义主码约束
D.可以将包含多个字段得字段组合设置为主码
2.在SQLServer中,可以使用(C)语句创建存储过程。
A.CreateTriggerB.InstallProcedure
C.CreateProcedureD.CreateView
3.SQLServer为每个触发器创建了两个临时表,它们就是(B)。
A.Updated与DeletedB.Inserted与Deleted
C.Inserted与UpdatedD.Seleted与Inserted
4.设有供应商关系S与零件关系P,如下图所示,S与P得主码分别就是“供应商号”与“零件号”,P得外码就是“供应商号”。
分析下列4个操作能否被正确执行,并说明理由。
(1)在P中插入元组(′P2′,′白′,′A2′)
(2)在P中插入元组(NULL,′绿′,′A1′)
(3)在P中插入元组(′P4′,′白′,′A5′)
(4)在P中插入元组(′P4′,′绿′,′A2′)
(1)不能正确执行,插入操作破坏了实体完整性约束,待插入得元组得“零件
号”属性值“P2”,在P表中已经存在。
“零件号”作为主键,其值不能重复,
必须唯一。
(2)不能正确执行,插入操作破坏了实体完整性约束,待插入得元组得“零件
号”属性值为空,“零件号”作为主属性,其值不能为空。
(3)不能正确执行,插入操作破坏参照完整性约束,待插入得元组得“供应商
号”属性值“A5”,在S中找不到没有相应得主键值。
(4)能正确执行,因为满足数据库得实体完整性与参照完整性。
5.假设有下面两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;
部门号为外码。
部门(部门号,名称,经理名,电话),其中部门号为主码,经理名为外码
请用SQL语言定义这两个关系模式,要求在关系模式中完成以下完整性约束条件得定义:
(1)定义每个模式得主码;
(2)定义参照完整性;
职工关系模式中得部门号属性参照部门关系模式中得主码部门号;
部门关系模式中得经理名属性参照职工关系模式中得姓名属性。
(3)定义职工年龄不超过60岁。
CREATETABLEDEPT
(DeptnoNUMBER
(2),
DeptnameVARCHAR(10),
ManagerVARCHAR(10),
PhoneNumberChar(12),
CONSTRAINTPK_SCRIMARYKEY(Deptno)
CREATETABLEEMP
(EmpnoNUMBER(4),
EnameVARCHAR(10),
AgeNUMBER
(2)
CONSTRAINTC1CHECK(Age<
=60),
JobVARCHAR(9),SalNUMBER(7,2),
DeptnoNUMBER
(2),
CONSTRAINTPK_EMPRIMARYKEY(Empno),
CONSTRAINTFK_DEPTNO
FOREIGNKEY(Deptno)REFFERENCESDEPT(Deptno)
第六章关系数据理论
1.为了设计出性能较优得关系模式,必须进行规范化,规范化主要得理论依据就是(A)
(A)、关系规范化理论(B)、关系代数理论
(C)、数理逻辑(D)、关系运算理论
2.规范化理论就是关系数据库进行逻辑设计得理论依据,根据这个理论,关系数据库中得关系必须满足:
每一个属性都就是(B)
(A)、长度不变得(B)、不可分解得
(C)、互相关联得(D)、互不相关得
3.已知关系模式R(A,B,C,D,E),及其上得函数相关性集合F={A→D,B→C,E→A},该关系模式得候选码就是(B)
(A)、AB(B)、BE(C)、CD(D)、DE
4.关系数据库规范化就是为了解决关系数据库中得(A)问题而引入得。
(A)、插入、删除、更新异常与数据冗余
(B)、提高查询速度
(C)、减少数据操作得复杂性
(D)、保证数据得安全性与完整性
5.数据库中得冗余数据就是指(D)得数据。
(A)、容易产生错误
(B)、容易产生冲突
(C)、无关紧要
(D)、由基本数据导出
6.在关系规范化过程中,分解关系得基本原则就是(B)
I、实现无损失连接
II、分解后得关系相互独立
III、保持原有得函数依赖关系
(A)、I与II(B)、I与III(C)、I(D)、II
7.设关系模式R(A,B,C),F就是R上成立得函数依赖集合,F={B→C},则分解P={AB,BC}相对于F(A)。
(A)、就是无损失联接,也就是保持函数依赖得分解
(B)、就是无损失联接,但不保持函数依赖得分解
(C)、不就是无损失联接,但保持函数依赖得分解
(D)、既不就是无损失联接,也不保持函数依赖得分解
第8到第9题基于以下得叙述:
有关系模式A(C,T,H,R,S),其中各属性得含义就是:
属性C代表课程名,属性T代表教师姓名,属性H代表上课时间,属性R代表上课教室,属性S代表学生姓名。
根据语义有如下函数依赖集:
F={C→T,(H,R)→C,(H,T)→R,
(H,S)→R}。
8.请问该关系模式A得候选码就是(D)
(A)、C(B)、(H,R)
(C)、(H,T)(D)、(H,S)
9.关系模式A得规范化程度最高达到(B)
(A)、1NF(B)、2NF(C)、3NF(D)、BCNF
10.设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式统计商店里每个职工得日营业额,以及职工所在得部门与经理信息。
如果规定:
每个职工每天只有一个营业额;
每个职工只在一个部门工作;
每个部门只有一个经理。
试回答下列问题:
(1)根据上述规定,写出模式R得基本函数依赖与候选码;
(2)说明R不就是2NF得理由,并把R分解成2NF模式集;
(3)进而分解成3NF模式集。
(1)基本得FD有三个:
(职工编号,日期)>
日营业额职工编号>
部门编号部门名>
部门经理
R得关键码为(职工编号,日期)
(2)R中有两个这样得FD:
(部门名,部门经理)
职工编号>
(部门名,部门经理)
可见前一个FD就是部分依赖,关系模式中存在非主属性对码得部分函数依赖,所以
R不就是2NF模式。
R应分解成R1(职工编号,部门名,部门经理)
R2(职工编号,日期,日营业额)此处,R1与R2都就是2NF。
(3)R2已就是3NF模式。
在R1中,存在两个FD:
部门名部门名>
因此,“职工编号>
部门经理”就是一个传递依赖,R1不就是3NF模式。
R1应分解成R11(职工编号,部门名)R12(部门名,部门经理)这样,ρ=(R11,R12,R2)
就是一个3NF模式集
第七章数据库设计
1.数据库设计中,将ER图转换成关系数据模型得过程属于(B)
(A)、需求分析阶段(B)、逻辑设计阶段
(C)、概念设计阶段(D)、物理设计阶段
2.数据库设计得概念设计阶段,表示概念结构得常用方法与描述工具就是(C)。
(A)、层次分析法与层次结构图
(B)、数据流程分析法与数据流程图
(C)、实体联系法与实体联系图
(D)、结构分析
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 概论 作业