数据库期末总复习

当时是在一个word文档里头一边复习一边敲这个的,复制过来的时候发现图片都不能复制过来,然后红色字体都变成黑色的,也懒得再调格式,就直接把word和对着复习的mooc题库还有往年的真题打个包链接放这儿了。
然后我整理的挺乱的,仅供参考。
https://download.csdn.net/download/u011612364/14142091

第一章 数据库系统概论

数据库系统的特点(书p7)
1.数据结构化
2.数据的共享性高,冗余度低,易扩充
3.数据独立性高
4.数据由DBMS统一管理和控制

书上课后简答题
1.简述计算机数据管理技术发展的三个阶段。 参见教材 P3-1.2 节
2.数据库管理系统有哪些主要功能?
数据库管理系统的功能主要有五个方面
数据库的定义功能 DBMS
提供 DDL 定义数据库的三级结构、两级映像,定义数据的完整性约束、保密限制 等约束
数据库的操纵功能
DBMS 提供 DML 实现对数据的操作.基本操作有检索和更新.
数据库的保护功能 DBMS 通过数据库的恢复、数据库的并发控制、数据完整性和数据安全性控制来实现对 数据库的保护.
数据库的维护功能 包括数据载入、转换、转储,数据库的改组以及性能监控等功能
数据字典功能 数据字典中存放着三级结构定义和数据库运行时的统计信息,对数据库的操作都要通过 数据字典来实现。
3.数据库管理系统通常由哪几部分组成? 通常由以下基本分组成:
(1) 数据定义语言及其翻译处理程序 (2)数据操纵语言及其编译(或解释)程序 (3) 数据库运行控制程序 (4) 实用程序
4. DBA 的职责是什么?
在数据库系统环境下有两类共享资源,一类是数据库,另一类是数据库管理系统软件, 因此需要有专门的管理机构来监督和管理数据库系统,dba 则是这个机构的一个会议组人员 负责全面管理和控制数据库系统,具体职责包括: 1)决定数据库中的信息内容和结构, 2)决定数据库的存储结构和存取策略 3)定义数据的安全性,要求完整性,约束条件 4)监控数据库的使用和运行 5)数据库的改进重组重构
30
判断(2分)
DB包含DBS和DBMS。F

第二章

模型:概念,逻辑,物理
逻辑模型既要面向用户,又要面向系统
三级模式
概念模式:一个数据库只有一个
外模式:保证安全性的有力措施
内模式:物理结构和存储方式的描述,只有一个

数据库系统有哪三级模式?这种三级模式结构的优点是什么?
数据库系统的三级模式结构由外 模式、模式个内模式组成。 数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性

数据库系统有哪三级模式?哪些模式只有一个,哪些模式可以有多个?哪个模式是保证数据库安全性的一个有力措施?
数据库系统的三级模式:模式、外模式和内模式。一个数据库只有一个模式。一个数据库只有一个内模式。一个数据库可以有多个外模式。外模式是保证数据库安全性的一个有力措施

什么叫数据独立性
数据库有哪两个独立性?如何保证这两个独立性的?
逻辑独立性:指的数据与程序逻辑结构上的独立特性,数据或应用程序的逻辑结构发生变化性都不影响对方,外模式与模式映身保证了其逻辑独立性; 物理独立性:指的是应用程序与数据存放在相互独立的磁盘地址,应用程序或数据的地址发生变化时都不影响对方,内模式与模式映象保证了其物理独立特性。

第三章

关系模式:关系的描述

码、主码和外码的概念
什么叫码,主码和外码?
码:也称键,是取值具有唯一性的属性,可唯一确定表中的一个元组,它可以由一个属性组成,也可以由多个属性共同组成。 主码:主码一般指主关键字。主关键字是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录。在两个表的关系中,主关键字用来在一个表中引用来自于另一个表中的特定记录。一个关系中所有的码构成候选码,为了管理方便,选定一个候选码作为元组标识,这个候选码称为主码,主码的取值具有唯一性,且不能为空。 外码:某个关系的主码相应的属性在另一关系中出现,此时该主码在就是另一关系的外码

关系完整性约束
什么叫关系完整性约束?其作用是什么? 关系完整性有哪几种?各自的含义是什么?
P31
关系完整性约束:是为保证数据库中数据的正确性和相容性,对关系模型提出的某种约束条件或规则。 作用:用来保证数据的正确性,有效性和兼容性。
关系完整性约束通常包括域完整性约束,实体完整性约束、参照完整性约束和用户定义完整性约束。
1.域完整性:是指表中的列必须满足某种特定的数据类型约束,其中约束又包括取值范围、精度等规定。
2.实体完整性:关系数据库中所有的表都有主码,且表中不存在:1、无主码值的记录2、与其它记录主码值相同的记录。
3.参照完整性:外码的取值必须参照主码的取值,参照完整性要求关系中不允许引用不存在的记录。
4.用户定义的完整性:不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性即是针对某个特定关系数据库的约束条件,它反映某一具体应用必须满足的语义要求。

关系代数
传统的:并(会消除重复) 交 差(可有交运算导出)笛卡尔积(属性:m+n,元组:m*n)
并交差运算都并相容
专门的:选择,投影(会消除重复,小于等于R的个数)
连接:等值连接:使用最广泛,
自然连接:两个共同属性的关系做等值连接,同时同名属性只保留一份

连接运算
等值连接和自然连接有什么异同点?
1、 自然连接一定是等值连接,但等值连接不一定是自然连接。 2、等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。 3、等值连接不把重复的属性除去;而自然连接要把重复的属性除去。

传统集合运算和专门的关系运算
传统的关系运算有哪些?专门的关系运算有哪些?什么叫并相容性?
1) 传统的集合操作:并、差、交、笛卡儿积。 (2)专门的关系操作:投影(对关系进行垂直分割)、选择(水平分割)、连接(关系的结合)、除法(笛卡儿积的逆运算)等。
2) 并相容性:两个关系必须具有相同的属性个数,并且每个相对应的属性对都具有相同的域,则称这两个关系并相容。
题库6、
投影运算会消除结果中重复的元组,因此小于等于R中的元组数量
)
在关系模型中,下列说法正确的为
得分/总分

A.
属性可以再分
0.00/3.00

B.
元组可以重复

C.
属性无序

D.
元组有序
正确答案:C你错选为A

在关系数据模型中,关系表现为一张二维表,把二维表的( )称为关系模式。

得分/总分

A.
数据

B.
表结构定义
3.00/3.00

C.


D.

第四章

三.SQL语言题 (第1到5小题,每题3分,第6到8小题每题5分,共30分)
单表查询(Top,Distinct,排序,模糊查询,分组查询)
多表查询
子查询
数据插入
创建视图
为数据库用户授予访问对象(如表)的某种权限
创建与调用带输入参数的存储过程

课后习题:(黑色的我写的,有错的用红色标注正解)
1、SELECT count(*) from Student
2、SELECT * from Student Where Ssex = ‘女’ AND Sdept =’管理学院’
3、SELECT * FROM Student Where SUBSTRING(Sname,2,1) = SUBSTRING(Sname,3,1)
–3 字符截取函数 SUBSTRING Select * from Student Where SUBSTRING(Sname,2,1)=SUBSTRING(Sname,3,1)
4、Select * From Student Where Sage IN (Select Sage From Student Where Sname=’黄一秋’)
5、SELCET Sname ,Tno,Cname,Grade FROM SC JOIN Student ON Student.Sno=SC.sno JOIN Course ON SC.Cno=Course.Cno

Select Sname,Cname,Grade From SC,Student ,Course Where Sc.Sno =Student.Sno and Sc.Cno =Course.Cno
6、CREATE VIEW vwScore
AS
SELCET Sname ,Tno,Cname,Grade FROM SC JOIN Student ON Student.Sno=SC.sno JOIN Course ON SC.Cno=Course.Cno
7、SELECT count() FROM Student GROUP BY Sdpet,Smajor
8、SELECT COUNT(
) FROM Student Group by Smajor WHERE Count(*)>=3
–8 Group By…Having
Select Sdept,Smajor,COUNT(Sno) From Student Group By Sdept,Smajor Having COUNT(Sno)>=3
9、SELECT Stdent.Sno,Sname,Grade From Student,Grade WHERE GRADE<60 Order by
Grade DESC
–9 排序 Select Student.Sno ,Student.Sname ,SC.Grade From SC,Student Where Sc.Sno =Student.Sno And Grade <60 Order byGrade DESC

10、INSERT INTO Student ()VALUES()
11、UPDATE Student SET tel = ‘ ‘ WHERE ….
–11 Update
Update Student Set Tel =‘13912345678’ Where Sno=‘G2016001’
12、DELETE FROM Student WHERE Sno LIKE ‘%06’
–12 Delete 删除数据 Select ‘’+Sno+’’ from Student Select * from Student Where RIGHT(Rtrim(Sno),2)=‘06’ Delete from SC Where RIGHT(Rtrim(Sno),2)=‘06’ Delete from Student Where RIGHT(Rtrim(Sno),2)='06
单表查询

)
下列说法中正确的是哪一项?( )
得分/总分

A.
若视图定义中包含有分组和聚合操作,仍然可以对该视图执行更新操作

B.
视图和表使用过程中没有任何区别

C.
若视图是基于多个表使用联接操作导出的,那么对这个视图执行更新操作时,每次可以同时修改其中的多张表。

D.
若视图是基于多个表使用联接操作导出的,那么对这个视图执行更新操作时,每次只能影响其中的一个表。

1、操纵语言(baiDML):用来操纵数du据库中数据的命令zhi。
包括:select、insert、update、delete。
2、定义语言(daoDDL):用来zhuan建立数据库、数据库对象和定义列的命令。
包括:create、alter、drop。
3、控制语言(DCL):用来控制数据库组件的存取许可、权限等的命令。
包括:grant、deny、revoke。

SQL语言有哪两种使用方式?
交互式 嵌入式
一种是独立的交互使用数据查询、数据更新等操作,称为自含语言。
另一种是嵌入到某种高级语言中,作为高级语言的一种扩充,是程序员编程时既可使用数据库语言又可使用常规的程序设计语言,这时高级语言叫宿主语言。

题库错题:12、创建视图的SQL语句中不能使用ORDER BY子句:
因为视图和表一样,数据行都是没有顺序的
创建视图的SQL语句中不能使用INTO子句:

14、数据库DROP命令和DELETE命令的本质区别主要在触发条件,用法,执行速度有区别,具体如下:、
1、触发条件不同
delete语句是数据库操作语言(dml),这个操作会放到rollbacksegement中,在事务提交后生效,执行时触发相应的trigger。
drop是数据库定义语言(ddl),操作立即生效,原数据不放到rollbacksegment中,不能回滚,操作不触发trigger。
2、用法不同
delete只删除内容、释放空间但不删除定义,而delete即可以对行数据进行删除,也可以对整表数据进行删除。
drop是删除内容和定义,并释放空间。执行drop语句,将使此表的结构一起删除。
3、执行速度不同
drop的执行速度大于delete。
delete的执行速度小于drop。

第五章 关系数据库理论

实体:现实世界中客观存在并可以被区别的事物。比如“一个学生”、“一本书”、“一门课”等等。值得强调的是这里所说的“事物”不仅仅是看得见摸得着的“东西”,它也可以是虚拟的,不如说“老师与学校的关系”。
属性:教科书上解释为:“实体所具有的某一特性”,由此可见,属性一开始是个逻辑概念,比如说,“性别”是“人”的一个属性。在关系数据库中,属性又是个物理概念,属性可以看作是“表的一列”。
元组:表中的一行就是一个元组。
分量:元组的某个属性值。在一个关系数据库中,它是一个操作原子,即关系数据库在做任何操作的时候,属性是“不可分的”。否则就不是关系数据库了。
码:表中可以唯一确定一个元组的某个属性(或者属性组),如果这样的码有不止一个,那么大家都叫候选码,我们从候选码中挑一个出来做老大,它就叫主码。
全码:如果一个码包含了所有的属性,这个码就是全码。
主属性:一个属性只要在任何一个候选码中出现过,这个属性就是主属性。
非主属性:与上面相反,没有在任何候选码中出现过,这个属性就是非主属性。
外码:一个属性(或属性组),它不是码,但是它别的表的码,它就是外码。
函数依赖:
函数依赖对关系模式的影响
函数依赖对关系模式有哪些影响?如何解决这些影响?
部分函数依赖、传递函数依赖会导致关系模式中的更新异常、插入异常、删除异常、数据冗余等问题。可以利用规范化理论改造关系模式,通过分解关系模式来消除其中不合适的数据依赖。
范式
如何避免关系中的数据冗余、删除异常、插入异常和修改异常等问题?
为避免关系中的数据冗余、删除异常、插入异常和修改异常等问题,应对关系模型进行规范化,而关系模式的规范化过程是通过对关系模式的分解来实现的,包括消除部分函数依赖、传递函数依赖和多值依赖。
关系的规范化程度越高越好么?
规范化程度过低的关系可能存在操作异常,但这并不意味着规范化程度越高的关系 模式就越好。因为规范化的同时会增加数据连接查询的难度,降低数据查询效率,折衷的方 式是引入受控冗余来降低规范化程度

关系模式的规范化
关系模式的规范化的基本思想是什么?如何实现关系模式的规范化?
关系规范化的基本思想是,消除数据依赖中不合适的部分,使各关系模式达到某种程度的分离,使一个关系只描述一个概念、一个实体或实体间的一种联系。

2.常用的反规范化技术有哪些?
反规范化常用的方法是合并 1:1 联系的表,合并 1:n 联系的表,复制 1:n 联系 1 端表中数据到 n 端,复制 m:n 联系中 m 端和 n 端数据到新产生的联系表中。
2018简答题
关系数据库模式设计不恰当导致的插入、更新和删除异常是指的什么? 该如何解决? 答案: 插入异常(想要插入数据,但因为表设计的问题,不能成功插入) (1 分) 删除异常(只想删除表中的某些数据 ,结果把不该删除的数据也删除了) (1 分) 更新异常(想更新一条数据,结果工作量大,还容易导致数据不一致) (1 分) 将关系模式规范化到 3NF。(2 分)

第六章

关系:一个关系对应通常说的一张表
关系模式:关系的描述
关系模型:关系模型由关系数据结构,关系操作集合,关系完整性约束三部分组成.
关系和关系模式的区别
关系模式是型,关系是值,关系模式是对关系的描述
关系是关系模式在某一个时刻的状态或者内容,关系模式是静态的,稳定的,而关系是动态的,随时间不断变化的,因为关系操作在不断地更新着数据库中的数据
类似于面向对象程序设计中”类“与”对象“的区别。”关系“是”关系模式“的一个实例,可以把”关系”理解为一张带数据的表,而“关系模式”是这张数据表的表结构。
关系模型和关系的区别
关系模型包含关系,关系是关系模型的数据结构,在关系模型中,现实世界的实体以及实体间的各级联系均用单一的结构类型,即关系来表示

数据库设计概述
数据库的设计过程一般可以分为哪几个阶段?

  1. 需求分析:分析用户的需求,包括数据、功能和性能需求; 2. 概念结构设计:主要采用 E - R 模型进行设计,包括画 E - R 图; 3. 逻辑结构设计:通过将 E - R 图转换成表,实现从 E - R 模型到关系模型的转换; 4. 数据库物理设计:主要是为所设计的数据库选择合适的存储结构和存取路径; 5. 数据库的实施:包括编程、测试和试运行; 6. 数据库运行与维护:系统的运行与数据库的日常维护。

概念结构设计方法:
27、实体的个数尽可能少p95 上面

ER图集成的两种方法,一次集成和逐步集成 p92 下面

9、1、属性冲突
(1)属性域冲突就是属性值的类型、取值范围或取值集合不同。例如:属性“零件号”有的定义为字符型,有的为数值型。
(2)属性取值单位冲突就类似于属性“重量”有的以克为单位,有的以公斤为单位。
2、命名冲突
(1) 同名异义。不同意义对象相同名称。
(2) 异名同义(一义多名)。同意义对象不相同名称。“项目”和“课题”
3、结构冲突
(1) 同一对象在不同应用中具有不同的抽象。例如"课程 "在某一局部应用中被当作实体,而在另一局部应用中则被当作属性。
(2)
同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同。
(3) 实体之间的联系在不同局部视图中呈现不同的类型。

2019 13.如果两个实体型之间的联系型是 M:N 类型,转换为关系时,( )。
A. 联系型本身不需要单独转换为一个关系 B.联系型本身必须单独转换为一个关系 C.联系型本身也可以不单独转换为一个关系 D.将两个实体型合并为一个实体型
书p96

13
判断(2分)
在关系模式存取方法的设计中.一个关系只能建立一个聚簇,但一个数据库可以建立多个聚簇。 T
书上p100

课后习题
10. 如果同一个实体集内部的实体之间存在 1:n 的联系,则根据 E-R 图向关系模型转 换的规则,转换得到的关系模型应包含( A )个关系模式。
A.1 B.2 C.3 D.4
11.如果同一个实体集内部的实体之间存在 m:n 的联系,则根据 E-R 图向关系模型转 换的规则,转换得到的关系模型应包含( B )个关系模式。 A.1 B.2 C.3 D.4

4.如何将 E-R 图转换为关系数据模型? 解:E-R 图转换为关系数据模型一般遵循以下原则: (1)每个实体类型转换成一个关系模式。实体的属性就是关系模式的属性,实体的的 码就是关系的主码。 (2)实体之间的联系转换,根据不同的情况进行不同的处理:一个 1:1 的联系可以转 换为一个独立的关系模式,也可以与任意一端的关系模式合并;一个 1:n 的联系可转换为一 个独立的关系模式,也可以与 n 端实体对应的关系模式合并;一个 m:n 的联系必须转换为一 个关系模式。

第七章 数据库保护

事务
11、
数据库恢复:建立冗余数据:数据转储,登记日志文件 p119
增加
1、
事务的特性
事务的一致性 p108事务的性质

串行调度的结果一定总是正确的p115
3、封锁协议
1.三级封锁协议
一级封锁协议
事务在修改数据时必须先加X锁,在事务结束之后释放X锁。
这样可以解决丢失修改的问题。因为不能有两个事务同时修改同一个数据,所以不会有修改被覆盖的问题。
二级封锁协议
在一级的基础上,要求读取数据A之前必须加上S锁,读取A之后立即释放S锁。
这样可以解决读脏数据的问题。因为一个事务如果对A进行修改,必须先加X锁。其他事务就不能在数据A上加S锁,就不能读取A,也就不会读到脏数据。
三级封锁协议
在二级的基础上,要求在读取数据A之前加上S锁,在事务结束之后再释放S锁。
这样可以解决不可重复读的问题。因为在事务结束前,数据A上一直有S锁,其他事务不能再在A上加X锁来修改A,在读取期间数据的值不会发生改变。

7、
两段锁协议p116

可以预防死锁的一次封锁法一定遵守两段锁协议,但是两段锁协议的事务可能发生死锁。
遵守第三季封锁协议一定遵守二段锁协议,反之不一定

10、实施数据库恢复,系统故障恢复还需要redo操作。
P121
5
单选(3分)
数据库中的封锁机制是( )的主要方法。
得分/总分

A.
安全性

B.
恢复

C.
并发控制

D.
完整性
0.00/3.00
正确答案:C你错选为D
书上p110 封锁技术是并发控制的措施

“脏”数据的读出是数据库安全性遭到破坏的一个例子。F
如果事务T获得了数据项Q上的排他锁,则T对Q只能写不能读。F
排它锁允许读取和修改
)
数据库在运行过程中由于软硬件故障可能造成数据被破坏,数据库恢复就是在尽可能短的时间内,把数据库恢复到故障发生前某一时刻的正确状态。T

第八章

9、(1)Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其他系统数据库及用户数据库的相关信息。因此,如果 master 数据库不可用,则 SQL Server 无法启动。在 SQL Server 2005 中,系统对象不再存储在 master 数据库中,而是存储在 Resource 数据库中。
(2)model 数据库用作在 SQL Server 实例上创建的所有数据库的模板。因为每次启动 SQL Server 时都会创建 tempdb,所以 model 数据库必须始终存在于 SQL Server 系统中。当发出 CREATE DATABASE(创建数据库)语句时,将通过复制 model 数据库中的内容来创建数据库的第一部分,然后用空页填充新数据库的剩余部分。 如果修改 model 数据库,之后创建的所有数据库都将继承这些修改。例如,可以设置权限或数据库选项或者添加对象,例如,表、函数或存储过程。
(3)Msdb数据库是代理服务数据库,为其报警、任务调度和记录操作员的操作提供存储空间。
(4)Tempdb是一个临时数据库,它为所有的临时表、临时存储过程及其他临时操作提供存储空间。Tempdb数据库由整个系统的所有数据库使用,不管用户使用哪个数据库,他们所建立的所有临时表和存储过程都存储在tempdb上。SQL Server每次启动时,tempdb数据库被重新建立。当用户与SQL Server断开连接时,其临时表和存储过程自动被删除。

10
mdf primary data file 主要数据文件
ndf secondary data files 次要数据文件
ldf Log data files 事务日志文件

2、
数据库种类及文件P136

第十章 安全管理

25
填空(2分)
_____权限约束了是否允许执行CREATE Table、CREATE View、CREATE Database等与创建数据库对象有关的操作。
得分/总分
你没有填写答案
正确答案:语句

第11章
2019年简答题第4小题

课后习题:
1.SQL Server 提供的安全控制过程分哪几步?
SQL Server 提供的安全认证包含后三个过程。第一个过程,确认用户是否是数据库服 务器的合法用户(具有登录账户);第二个过程,确认用户是否是特定数据库的合法用户 (具有访问数据库的权限);第三个过程,确认用户是否具有合适的操作权限(具有操作 数据库数据的权限)。

2.数据库用户的权限分哪几类? 数据库的用户按其操作权限的不同可分为如下三类: (1) 系统管理员 系统管理员在数据库服务器上具有全部的权限,如对服务器的配置和管理,对全部数据 库的操作。数据库管理系统在安装后具有默认的系统管理员,为 sa。sa 的登录密码在安装数 据库管理系统时设定。sa 还可以授予其他用户具有系统管理员的权限。 (2) 数据库对象拥有者 创建数据库对象的用户即为数据库对象拥有者 dbo。dbo 对其所拥有的对象具有全部权 限。 (3) 普通用户 普通用户在被授权后,具有对数据库数据的增、删、改、查询等权限

3.什么是用户定义的角色?定义角色的目的是什么? 用户定义数据库角色:就是当一组用户需要设置的权限不同于固定数据库角色所具有的 权限时,为了满足要求而定义的新的数据库角色。定义角色的目的是使得系统管理员只需对 权限进行种类划分,然后将不同的权限授予不同的角色,而不必关心有哪些具体用户。而且 当角色中的成员发生变化时,比如添加成员或删除成员,系统管理员都无需做任何关于权限 的操作。

第十一章 备份和恢复数据库

如果数据库很稳定就不需要经常做备份,反之要经常做备份以防数据库损坏。F
备份设备在操作系统一级实际上就是逻辑存在的磁盘或磁盘上的文件。F
得分/总分

A.
0.00/2.00

B.
正确答案:B你错选为A
解析:备份设备在操作系统一级实际上就是物理存在的磁盘或磁盘上的文件。

第十二章:存储过程和触发器

猜你喜欢

转载自blog.csdn.net/u011612364/article/details/110236838