数据库原理复习资料整理

数据库原理复习资料整理
数据库原理复习资料整理

第一章

1.四大基本概念:

数据:数据库中存储的基本对象,它是描述事物的符号记录。种类有:文字、图形、图象、声音等。特点是:数据与其语义是不可分的。

数据库:(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。其特点是:数据按一定的数据模型组织、描述和储存;可为各种用户共享;冗余度较小;数据独立性较高;易扩展。(特点:永久存储、有组织、可共享)

数据库管理系统:是位于用户与操作系统之间的一层数据管理软件。

数据库管理系统的主要功能:数据定义功能;数据组织、存储和管理;数据操纵功能;数据库的事物管理和运行管理;数据库的建立和维护功能;其他功能。

数据库系统:是指在计算机系统中引入数据库后的系统。一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。

在不引起混淆的情况下常常把数据库系统简称为数据库。

2.数据管理技术的三个阶段及其特点

人工管理阶段:特点:1、数据不保存。

2、没有软件系统对数据进行管理。

3、这一时期没有文件的概念,数据的组织方式必须由程序员自行设计。

4、一组数据对应一组程序,数据是不共享的。

5、数据不具有独立性,当数据结构发生变化时,应用程序要变化。

文件系统阶段:特点:1、数据可以长期保存。

2、由文件系统管理数据。

3、数据共享性差, 冗余度大—文件是面向应用的。

4、数据独立性差—是不具有弹性的无结构的数据集合,文件之间是孤立的,不能反映事物间联系。

数据库系统阶段:特点:数据的管理者:DBMS

数据面向的对象:现实世界

数据的共享程度:共享性高

数据的独立性:高度的物理独立性和一定的逻辑独立性

数据的结构化:整体结构化

数据控制能力:由DBMS统一管理和控制

3、数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据有DBMS统一管理和控制。

4、数据模型的组成要素:数据结构、数据操作和完整性约束。

数据结构是对系统静态特性的描述。

数据操作是对系统动态特性的描述。

5、概念模型:

基本概念:实体:客观存在并可相互区别的事物称为实体。

属性:实体所具有的某一特性称为属性。

码:唯一标识实体的属性集称为码。

域:属性的取值范围称为该属性的域。

实体型:具有相同属性的实体具有的共同的特征和性质,即: 用实体名及其属性名集合来抽象和刻画同类实体。

实体集:同型实体的集合称为实体集。

联系:现实世界中事物内部以及事物之间的联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。

概念模型的表示方法:实体—联系方法,用E-R图来描述。

E-R图:

实体型:矩形表示,矩形框内写明实体名。

属性:椭圆表示,用无向边将其与相应实体连接起来。

联系:菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)。联系可以有属性。

m n

课程学生

选修

课程号

课程名成绩学号姓名

6、关系模型:在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。

关系模型中的基本概念:关系(Relation):一个关系通常对应一张表;

元组(Tuple):表中的一行即为一个元组;

属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名;

主码(Key):表中的某个属性组,它可以唯一确定一个元组;

域(Domain):属性的取值范围;

分量:元组中的一个属性值;

关系模式:对关系的描述,一般表示为:

关系名(属性1,属性2,……属性n)

关系模型中,实体及实体间的联系都是用关系来表示。

例学生、课程、学生与课程之间的多对多联系:

学生(学号,姓名,年龄,性别,系号,年级)

课程(课程号,课程名,学分)

选修(学号,课程号,成绩)

关系必须是规范化的,满足一定的规范条件。最基本的规范条件:关系的每一个分量必须是一个不可分的数据项。

关系模型的优缺点:

优点:

建立在严格的数学概念的基础上。

概念单一。数据结构简单、清晰,用户易懂易用

关系模型的存取路径对用户透明。

缺点

存取路径对用户透明导致查询效率往往不如非关系数据模型

7、数据库系统的三级模式

数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。

模式(逻辑模式),是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数

据视图。一个数据库只有一个模式。

定义模式时不仅要定义数据的逻辑结构,而且要定义数据之间的联系,定义与数据有关的安全性、完整性要求

外模式(子模式Subschema)或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的表述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

外模式通常是模式的子集,一个数据库可以有多个外模式。

外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据是不可见的。

内模式(存储模式Storage Schema),是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。

8、数据库的二级映像功能:数据库管理系统在三级模式之间提供了两层映象:外模式/模式映象、模式/内模式映象。

外模式/模式映象

定义外模式与模式之间的对应关系

每一个外模式都对应一个外模式/模式映象

映象定义通常包含在各自外模式的描述中

外模式/模式映象如何保证数据的逻辑独立性?

当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变。

应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

模式/内模式映象

模式/内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。

数据库中模式/内模式映象是唯一的

该映象定义通常包含在模式描述中

模式/内模式映象如何保保证数据的物理独立性?

当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变。应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。

9、数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统和数据库管理员构成。

第四章

1、安全性级别

TCSEC将系统划分为四组(ABCD)七个等级,依次是D、C1、C2、B1、B2、B3、A1。 D级:是最低级别。将一切不符合更高标准的系统均归于D组。如DOS实操作系统中安全标准为D级的典型例子。

C1级:非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控制(DAC),保护或限制用户权限的传播。

C2级:安全产品的最低档次。提供受控的存取保护,将C1级的DAC进一步细化,以个人身份注册负责,并实施审计和资源隔离。达到C2级的产品在其名称中往往不突出“安全”(Security)这一特色。

B1级:标记安全保护。“安全”(Security)或“可信的”(Trusted)产品。

对系统的数据加以标记,对标记的主体和客体实施强制存取控制(MAC)、审计等安全机制。 B2级:结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC

和MAC。经过认证的B2级以上的安全系统非常稀少。

B3级:安全域。

A1级:验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证以确信各安全保护真正实现。

2、数据库安全性控制方法:

3、用户标识与鉴别

是系统提供的最外层安全保护措施。

用户标识:用一个用户名或用户标识号来标明用户身份。

口令:系统核对口令以鉴别用户身份。

基本方法

系统提供一定的方式让用户标识自己的名字或身份;

系统内部记录着所有合法用户的标识;

每次用户要求进入系统时,由系统核对用户提供的身份标识;

通过鉴定后才提供机器使用权。

用户标识和鉴定可以重复多次

该方法简单易行,但用户名和口令容易被人窃取。

4、存取控制

存取控制机制的组成:定义存取(用户)权限检查存取权限定义存取权限:指定哪些用户可以对数据对象进行哪些操作。

检查存取权限:检查操作请求是否超出了定义的权限。

常用存取控制:

自主存取控制(DAC):C2级,非常灵活。

同一用户对于不同的数据对象有不同的存取权限

不同的用户对同一对象也有不同的权限

用户还可将其拥有的存取权限转授给其他用户

强制存取控制(MAC): B1级,比较严格。

每一个数据对象被标以一定的密级

每一个用户也被授予某一个级别的许可证

对于任意一个对象,只有具有合法许可证的用户才可以存取

5、用户权限有数据库对象和操作类型两个要素组成。

6、自主存取控制(DAC)方法

主要通过SQL提供的grant语句和revoke语句来实现。

授权:定义存取权限成为授权。

GRANT语句的一般格式:

GRANT <权限>[,<权限>]...

[ON <对象类型> <对象名>]

TO <用户>[,<用户>]...

[WITH GRANT OPTION];

GRANT功能(作用):将对指定操作对象的指定操作权限授予指定的用户。

发出GRANT语句的对象:DBA(数据库管理员),数据库对象创建者,已经拥有该权限的用户。DBA拥有对数据库所有对象的所有权限,用户对自己建立的基本表和视图拥有全部的操作权限。

接受权限的用户:一个或多个具体用户,或PUBLIC,即全体用户。

WITH GRANT OPTION:获得某种权限的用户还可以把这种权限再授予别的用户。若没有指定该语句,则用户只能使用该权限,不能传播该权限。

例1 把查询Student表权限授给用户U1

GRANT SELECT(INSERT/UPDATE(Sno))或者为 ALL PRIVILEGES(全部操作权限) ON TABLE Student

TO U1;或者 TO U1,U2,U3;或者 TO PUBLIC;

例2 把对表SC的insert权限授予U5,并允许将此权限在授予其他用户。

GRANT INSERT

ON SC

TO U5

WITH GRANT OPTION;

执行例2后,U5不仅拥有了对表SC的INSERT权限,还可以传播此权限:

U5 可以将此权限授予U6(即有U5发出下列语句)

GRANT INSERT

ON SC

TO U6

WITH GRANT OPTION;

REVOKE(回收)

REVOKE语句的一般格式为:

REVOKE <权限>[,<权限>]...

[ON <对象类型> <对象名>]

FROM <用户>[,<用户>]...[CASCADE|RESTRICT];

REVOKE语句功能:从指定用户那里收回对指定对象的指定权限

CASCADE:联级回收

例把用户U4修改学生学号的权限收回

REVOKE UPDATE(Sno)

ON TABLE Student

FROM U4;或者为 PUBLIC

例把用户U5对SC表的INSERT权限收回

REVOKE INSERT

ON TABLE SC

FROM U5 CASCADE;//直接或间接从U5得到的insert权限也将被回收

注:系统不同,缺省回收不同,有的是缺省为CASCADE,有的为RESTRICT

7、强制存取控制(MAC)方法

在MAC中,DBMS所管理的全部实体被分为主体和客体两大类。

主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。

客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等等。

对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记(Label)。

敏感度标记被分成若干级别,通常为:绝密(Top Secret)、机密(Secret)、可信(Confidential)、公开(Public)等。

主体的敏感度标记被称为许可证级别,客体的敏感度标记称为密级。

当某一用户(或一主体)以标记label注册入系统时,系统要求他对任何客体的存取必须遵循如下规则:

(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体;

(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。

第五章

1、数据库的完整性是指数据的正确性和相容性。

2、完整性控制机制:(1)提供定义完整性月数条件的机制

(2)提供完整性检查的方法(3)违约处理

3、实体完整性定义:PRIMARY KEY定义,表级完整性约束或列级完整性约束。

实体完整性:主属性不能为空。

例:CREATE TABLE Student

(Sno CHAR(5) PRIMARY KEY, /*在列级定义主码*/

Sname CHAR(20) NOT NULL,

Ssex CHAR(1) ,

Sage INT,

Sdept CHAR(15));

CREATE TABLE Student

(Sno CHAR(5) ,

Sname CHAR(20) NOT NULL,

Ssex CHAR(1) ,

Sage INT,

Sdept CHAR(15),

PRIMARY KEY (Sno) /*在表级定义主码*/

);

CREATE TABLE SC

(Sno CHAR(9) NOT NULL,

Cno CHAR(4) NOT NULL,

Grade SMALLINT,

PRIMARY KEY (Sno,Cno) /*一组属性为主码,只能在表级定义主码*/ );

4、实体完整性检查和违约处理

按照实体完整性规则,系统自动检查:1)主码值是否唯一。2)主码各属性是否为空。

5、参照完整性定义:创建表时,FOREIGN KEY定义。

参照完整性:外码取值为空或者等于相对应的主码的某个元祖的值。

例: CREATE TABLE SC(

Sno CHAR(5) ,

Cno CHAR(3) ,

Grade int,

Primary key (Sno, Cno)

foreign key (Sno) references Student(Sno),

foreign key (Cno) references Course(Cno)

);

6、实现参照完整性要考虑的几个问题:

1)外码能否接受空值问题

2)在被参照关系中删除元组的问题

3)在参照关系中插入元组时的问题

4)修改关系中主码的问题

1)外码能否接受空值问题

在实现参照完整性时,系统除了应该提供定义外码的机制,还应提供定义外码列是否允许空值的机制。

例1:

学生(学号,姓名,性别,专业号,年龄)

专业(专业号,专业名)

在学生关系中的专业号列可以取空值。

例2:

学生(学号,姓名,性别,专业号,年龄)

课程(课程号,课程名,学分)

选修(学号,课程号,成绩)

选修关系中的学号列不能取空值。

2)在被参照关系中删除元组的问题

一般地,当删除被参照关系的某个元组,而参照关系存在若干元组,其外码值与被参照关系删除元组的主码值相同,这时可有三种不同的策略:

(1) 级联删除(CASCADES)

(2) 受限删除(RESTRICTED)

仅当参照关系中没有任何元组的外码值与被参照关系中要删除元组的主码值相同时,系统才执行删除操作,否则拒绝此删除操作。

(3) 置空值删除(NULLIFIES)

删除被参照关系的元组,并将参照关系中相应元组的外码值置空值。

这三种处理方法,哪一种是正确的,要依应用环境的语义来定

3)在参照关系中插入元组时的问题

一般地,当参照关系插入某个元组,而被参照关系不存在相应的元组,其主码值与参照关系插入元组的外码值相同,这时可有以下策略:

(1)受限插入

仅当被参照关系中存在相应的元组,其主码值与参照关系插入元组的外码值相同时,系统才执行插入操作,否则拒绝此操作。

(2)递归插入

首先向被参照关系中插入相应的元组,其主码值等于参照关系插入元组的外码值,然后向参照关系插入元组。

4)修改关系中主码的问题

(1) 不允许修改主码

在有些RDBMS中,修改关系主码的操作是不允许的。

(2) 允许修改主码

在有些RDBMS中,允许修改关系主码,但必须保证主码的唯一性和非空,否则拒绝修改。

若修改的是被参照关系,则与删除类似,有三种策略:

级联修改:修改被参照关系主码值的同时,修改参照关系中相应的外码值。

受限修改:拒绝此修改操作。只当参照关系中没有任何元组的外码值等于被参照关系中某个元组的主码值时,才能被修改。

置空值修改:修改被参照关系主码值的同时,将参照关系中相应的外码值置为空值。例: CREATE TABLE SC(

Sno CHAR(5) NOT NULL,

Cno CHAR(3) NOT NULL,

Grade SMALLINT,

Primary key (Sno, Cno)

foreign key (Sno) references Student(Sno),

ON DELETE CASCADE 级连删除

ON UPDATE CASCADE, 级连更新

foreign key (Cno) references Course(Cno)

ON DELETE CASCADE

ON UPDATE CASCADE);

7、用户定义的完整性:元组上的约束条件的定义。

列值非空(NOT NULL)列值唯一(UNIQUE) CHECK短语

例: CREATE TABLE Student

(Sno CHAR(5) ,

Sname CHAR(20) NOT NULL,

Ssex CHAR(1) ,

Sage INT,

Sdept CHAR(15),

PRIMARY KEY (Sno)

CHECK (Ssex=‘女’ OR Sname NOT LIKE ‘Ms.%’)

);

8、完整性约束命名子句

CREATE TABLE Student

(Sno NUMERIC(6)

CONSTRAINT C1 CHECK(Sno BETWEEN 90000 AND 99999),

Sname CHAR(20)

CONSTRAINT C2 NOT NULL,

Ssex CHAR(2)

CONSTRAINT C3 CHECK(Ssex IN (’男‘,’女‘)),

CONSTRAINT C4 PRIMARY KEY (Sno)

);

注:C1、C2、C3、C4为约束名 constraint为定义约束名的关键字修改表中的完整性限制

ALTER TABLE Student DROP CONSTRAINT C4;

ALTER TABLE Student ADD CONSTRAINT C1 CHECK(Sno BETWEEN 900000 AND 999999);

第九章

1、RDBMS查询处理的4个阶段:查询分析,查询检查,查询优化和查询执行。

2、集中式数据库中

查询总代价=磁盘存取块数(I/O代价)+处理机时间(CPU代价)+内存代价

在集中式数据库中I/O代价是最主要的。

分布式数据库中

查询总代价=I/O代价+CPU代价+内存代价+通信代价

3、查询优化的总目标:(1)选择有效的策略(2)求得给定关系表达式的值(3)使得查询代价最小(实际上是较小)

4、代数优化

常用的等价变换规则:

(1)连接、笛卡尔积交换律

设E1和E2是关系代数表达式,F是连接运算的条件,则有

(2)连接、笛卡尔积的结合律

设E1,E2,E3是关系代数表达式,F1和F2是连接运算的条件,则有

(3)投影的串接定律

这里,E是关系代数表达式,Ai(i=1,2,…,n),Bj(j=1,2,…,m)是属性名且{A1,A2,…,An}构成{B1,B2,…,Bm}的子集。

(4) 选择的串接定律

这里,E是关系代数表达式,F1、F2是选择条件。

选择的串接律说明选择条件可以合并。这样一次就可检查全部条件。

(5) 选择与投影操作的交换律

选择条件F只涉及属性A1,…,An。

若F中有不属于A1,…,An的属性B1,…,Bm则有更一般的规则:

(6) 选择与笛卡尔积的交换律

如果F中涉及的属性都是E1中的属性,则

如果F=F1∧F2,并且F1只涉及E1中的属性,F2只涉及E2中的属性,则由上面的等价变换规则1,4,6可推出:

若F1只涉及E1中的属性,F2涉及E1和E2两者的属性,则仍有

它使部分选择在笛卡尔积前先做。

(7) 选择与并的分配律

设E=E1∪E2,E1,E2有相同的属性名,则

σF(E1∪E2)≡σF(E1)∪σF(E2)

(8) 选择与差运算的分配律

若E1与E2有相同的属性名,则

σF(E1-E2)≡σF(E1)-σF(E2)

(9) 选择对自然连接的分配律

σF(E1 E2)≡σF(E1) σF(E2)

F只涉及E1与E2的公共属性

(10) 投影与笛卡尔积的分配律

设E1和E2是两个关系表达式,A1,…,An是E1的属性,B1,…,Bm是E2的属性,则

(11) 投影与并的分配律

设E1和E2有相同的属性名,则

5、查询树的启发式优化

1. 选择运算应尽可能先做。在优化策略中这是最重要、最基本的一条

2. 把投影运算和选择运算同时进行

3. 把投影同其前或其后的双目运算结合起来

4. 把某些选择同在它前面要执行的笛卡尔积结合起来成为一个连接运算

5. 找出公共子表达式

6、查询优化树的示例

[例3] 求选修了2号课程的学生姓名。用SQL表达:

SELECT Student.Sname

FROM Student,SC

WHERE Student.Sno=SC.Sno AND https://www.360docs.net/doc/125370358.html,o=‘2’;

把SQL语句转换成查询树,如下图所示

为了使用关系代数表达式的优化法,假设内部表示是关系代数语法树,则上面的查询树如下图所示。

对查询树进行优化如下图

第十章

1、事务:是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。

2、事务的四大特点:原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持续性(Durability )。

3、事务是恢复和并发控制的基本单位。

4、四大类故障:事务内部的故障、系统故障、介质故障、计算机病毒

5、恢复机制涉及的两个关键问题:第一,如何建立冗余数据;第二,如何利用这些冗余数据实施数据库恢复。

6、建立冗余数据值常用的技术是:数据转储和登录日志文件。

7、数据转储分类

静态转储:在系统中无运行事务是进行的转储操作。简单,但会降低数据库的可用性。

动态转储:转储期间允许对数据库进行存取或修改。即转储和用户事务可以并发执行。

优点:不用等待正在运行的用户事务结束,不会影响新事务的运行。

缺点:不能保证副本中的数据正确有效。

海量转储:每次转储全部数据库。

增量转储:每次只转储上一次转储后更新过的数据。

8、日志文件:用来记录事务对数据库的更新操作的文件。

登记日志文件时必须遵循的两条原则:(1)登记的次序严格按并发事务执行的时间次序。(2)必须先写日志文件,在写数据库。

9、事务故障的回复(由系统自动完成)

步骤:(1)反向扫描文件日志(即从最后向前扫描日志文件),查找该事务的更新操作。

(2)对该事务的更新操作执行逆操作。即将日志记录中“更新前的值”(Befor Image, BI)写入数据库。

插入操作,“更新前的值”为空,则相当于做删除操作

删除操作,“更新后的值”为空,则相当于做插入操作

若是修改操作,则用BI(Before Image)代替 AI(After Image)

(3)继续反向扫描日志文件,查找该事务的其他更新操作,并做同样处理。

(4)如此处理下去,直至读到此事务的开始标记,事务故障恢复就完成了。10、系统故障的回复(由系统在重新启动时自动完成)

步骤:(1)正向扫描日志文件(即从头扫描日志文件)

Redo队列: 在故障发生前已经提交的事务 T1, T3, T8…..

Undo队列:故障发生时尚未完成的事务 T2, T4, T5, T6, T7, T9 …...

(2)对Undo队列事务进行UNDO处理。反向扫描日志文件,对每个UNDO事务的更新操作执行逆操作。

T2, T4, T5, T6, T7, T9 ……

(3)对Redo队列事务进行REDO处理。正向扫描日志文件,对每个REDO事务重新执行登记的操作。

T1, T3, T8…..

11、介质故障的回复

步骤:(1)装入最新的后备数据库副本,使数据库恢复到最近一次转储时的一致性状态。(对于静态转储的数据库副本,装入后数据库即处于一致性状态。对于动态转储的数据库副本,还须同时装入转储时刻的日志文件副本,利用与恢复系统故障相同的方法(即REDO+UNDO),才能将数据库恢复到一致性状态。)

(2)装入有关的日志文件副本,重做已完成的事务。

首先扫描日志文件,找出故障发生时已提交的事务的标识,将其记入重做队列。然后正向扫描日志文件,对重做队列中的所有事务进行重做处理。即将日志记录中“更新后的值”写入数据库。

第十一章

1、多事务执行方式

串行执行、交叉并发方式、同时并发方式

2、为什么要进行并发控制?

当多个用户并发地存取数据库时就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏是事务的一致性和数据库的一致性。所以数据库管理系统必须提供并发控制机制。

3、数据库管理系统中并发控制机制的责任:保证事务的隔离性和一致性,DBMS需要对并发

操作进行正确调度。

4、并发操作带来的数据不一致性主要有:丢失修改、不可重复读、读“脏”数据。

5、并发控制技术:封锁。

6、基本的封锁类型有两种:排它锁(写锁、X 锁),共享锁(读锁、S 锁)。

7、封锁类型的相容矩阵:

8、三级封锁协议:

1级封锁协议:事务T 在修改数据R 之前必须先对其加X 锁,直到事务结束才释放。

正常结束(COMMIT ) 非正常结束(ROLLBACK )

1级封锁协议可防止丢失修改

在1级封锁协议中,如果是读数据,不需要加锁的,所以它不能保证可重 复读和不读“脏”数据。

2级封锁协议:1级封锁协议+事务T 在读取数据R 前必须先加S 锁,读完后即可释放S 锁。 2级封锁协议可以防止丢失修改和读“脏”数据。

在2级封锁协议中,由于读完数据后即可释放S 锁,所以它不能保证可重复读。 3级封锁协议:1级封锁协议 + 事务T 在读取数据R 之前必须先对其加S 锁,直到事务 结束才释放。

3级封锁协议可防止丢失修改、读脏数据和不可重复读。

三级封锁协议总结:

9、活锁:某个事务永远处于等待状态。

避免活锁的简单方法是采用先来先服务的策略。

10、死锁:多个事务同时处于等待状态。每个事务都在等待其它事务释放锁使其能够继续执行,从而出现多个事务互相等待的僵局,每个事务永远不能结束。

11、死锁的预防:不易实现,故DBMS 在解决死锁问题上普遍采用诊断并解除死锁的方法

1)一次封锁法:要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继

续执行。

一次封锁法存在的问题:降低并发度、扩大封锁范围。

将以后要用到的全部数据加锁,势必扩大了封锁的范围,从而降低了系统的并发度。

2)顺序封锁法:顺序封锁法是预先对数据对象规定一个封锁顺序,所有事务都按这个

顺序实行封锁。

顺序封锁法存在的问题:维护成本高。

数据库系统中可封锁的数据对象极其众多,并且随数据的插入、删除等操作而不断地变

Y=Yes ,相容的请求

N=No ,不相容的请求

T1 T2 X S - X N N Y

S N Y Y - Y Y Y

化,要维护这样极多而且变化的资源的封锁顺序非常困难,成本很高。

12、死锁诊断与解除

死锁诊断方法:

1)超时法:如果一个事务的等待时间超过了规定的时限,就认为发生了死锁。

优点:实现简单

缺点:有可能误判死锁。时限若设置得太长,死锁发生后不能及时发现。

2)等待图法:用事务等待图动态反映所有事务的等待情况。

事务等待图是一个有向图G=(T,U)

T为结点的集合,每个结点表示正运行的事务

U为边的集合,每条边表示事务等待的情况

若T1等待T2,则T1,T2之间划一条有向边,从T1指向T2

并发控制子系统周期性地(比如每隔1 min)检测事务等待图,如果发现图中存在回路,则表示系统中出现了死锁。

解除死锁:选择一个处理死锁代价最小的事务,将其撤消,释放此事务持有的所有的锁,使其它事务能继续运行下去。

13、串行调度是正确的,执行结果等价于串行调度的调度也是正确的。

14、可串行化的调度:当且仅当其结果与按某一次序串行地执行这些事务时的结果相同,称这种调度策略为可串行化的调度。

15、可串行性:是并发事务正确调度的准则。按这个准则规定,一个给定的并发调度,当且仅当它是可串行化的,才认为是正确调度。

16、目前DBMS普遍采用两段锁协议的方法实现并发调度的可串行性,以保证调度的正确性。

17、两段锁协议的内容:

1)在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁。

2)在释放一个封锁之后,事务不再获得任何其他封锁。

18、“两段”锁的含义:事务分为两个阶段

第一阶段是获得封锁,也称为扩展阶段;第二阶段是释放封锁,也称为收缩阶段。

19、两段锁协议与三级封锁协议

两类不同目的的协议:两段锁协议保证并发调度的正确性。

三级封锁协议:在不同程度上保证数据一致性。

遵守第三级封锁协议必然遵守两段协议。

20、封锁对象的大小称为封锁粒度。封锁对象可以是逻辑单元、物理单元。

例:在关系数据库中,封锁对象:

逻辑单元: 属性值、属性值集合、元组、关系、索引项、整个索引、整个数据库等。

物理单元:页(数据页或索引页)、物理记录等。

21、封锁粒度与并发度的关系:

封锁的粒度越大,小,

系统被封锁的对象少,多,

并发度小,高,

系统开销小,大,

选择封锁粒度:考虑封锁机构和并发度两个因素;对系统开销与并发度进行权衡22、选择封锁粒度的原则:

需要处理多个关系的大量元组的用户事务:以数据库为封锁单位;

需要处理大量元组的用户事务:以关系为封锁单元;

只处理少量元组的用户事务:以元组为封锁单位。

23、多粒度封锁:在一个系统中同时支持多种封锁粒度供不同的事务选择。

24、多粒度树:1)以树形结构来表示多级封锁粒度。

2)根结点是整个数据库,表示最大的数据粒度。

3)叶结点表示最小的数据粒度。

25、多粒度封锁协议:

允许多粒度树中的每个结点被独立地加锁;

对一个结点加锁意味着这个结点的所有后裔结点也被加以同样类型的锁;

在多粒度封锁中一个数据对象可能以两种方式封锁:显式封锁和隐式封锁。25、显式封锁:直接加到数据对象上的封锁。

隐式封锁:由于其上级结点加锁而使该数据对象加上了锁。

显式封锁和隐式封锁的效果是一样的。

26、引进意向锁(intention lock)目的:提高对某个数据对象加锁时系统的检查效率。

27、三种常用的意向锁:意向共享锁(简称IS锁)、意向排它锁(,简称IX锁)、共享意向排它锁(简称SIX锁)

28、IS锁:如果对一个数据对象加IS锁,表示它的后裔结点拟(意向)加S锁。

IX锁:如果对一个数据对象加IX锁,表示它的后裔结点拟(意向)加X锁。

SIX锁:如果对一个数据对象加SIX锁,表示对它加S锁,再加IX锁,即SIX = S + IX。

(完整版)数据库原理及应用-期末考试试题

数据库原理及应用期末考试试题 1. 组织层数据模型的三要素是[ ]。 A.外模式,概念模式和内模式 B.关系模型,网络模型,层次模型 C.1:1的联系,1:n的联系,n:m的联系 D.数据结构,数据操作,数据约束条件 2在关系模型中,任何关系必须满足约束条件包括实体完整性、[ ]和用户自定义完整性。 A.动态完整性 B.数据完整性 C.参照完整性 D.结构完整性 3 SQL Server 中的角色是[ ]。 A. 一个服务器登录 B. 一个数据库用户 C. 一组权限的集合 D. 一个服务器用户 4.当数据的物理存储结构改变时,应用程序无需改变,这样的特性称为数据的[ ]。 A.逻辑独立性 B.物理独立性 C.程序无关性 D.物理无关性 5.下列哪个不是以处理大量数据为中心的应用程序的特点[ ]。 A.涉及的数据量大 B.数据需长期联机保存 C.数据的计算复杂 D.数据可被多个应用所共享 6.E-R图适用于建立数据库的[ ]。 A.概念模型 B.结构模型 C.逻辑模型 D.物理模型 7. 在关系数据库设计中,设计关系模型属于[ ]。 A.需求分析 B.物理结构设计 C.逻辑结构设计 D.概念结构设计 8.[ ]记录了对数据库中数据进行的每一次更新操作。 A.后援副本 B.日志文件 C.数据库 D.缓冲区 9. [ ]是用户定义的一组数据库操作序列,是一个基本的不可分割的工作单元。 A.程序 B.进程 C.事务 D.文件 10.信息世界中,实体是指[ ]。 A.客观存在的事物 B. 客观存在的属性 C. 客观存在的特性 D. 某一具体事件 11. 数据库系统中, DBA表示[ ] 。 A.应用程序设计者 B. 数据库使用者

数据库原理-期末考试复习题及答案

数据库原理-期末考试复习题及答案

数据库 1. 下列四项中,不属于数据库系统的主要特点的是()。 A.数据结构化B.数据的冗余度小 C.较高的数据独立性D.程序的标准化 2.数据的逻辑独立性是指() A.内模式改变,模式不变 B.模式改变,内模式不变 C.模式改变,外模式和应用程序不变 D.内模式改变,外模式和应用程序不变 3.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是 ()。 A.外模式 B.内模式 C.存储模式 D.模式 4. 相对于非关系模型,关系数据模型的缺点之一是()。 A.存取路径对用户透明,需查询优化 B.数据结构简单 C.数据独立性高D.有严格的数学基础 5. 现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业,出生日期)的主码是()。 A.宿舍编号 B.学号 C.宿舍地址,姓名 D.宿舍编号,学号 6.自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的()。 精心整理,用心做精品2

精心整理,用心做精品3 A.元组 B.行 C.记录 D.属性 7.下列关系运算中,()运算不属于专门的关系运算。 A.选择B.连接 C.广义笛卡尔积D.投影 8. SQL语言具有()的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 9.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是()。 A.M端实体的关键字B.N端实体的关键字C.M端实体关键字与N端实体关键字组合 D.重新选取其他属性 10.SQL语言中,删除一个表的命令是() A. DELETE B. DROP C. CLEAR D. REMOVE 11.图1中()是关系完备的系统 A B C D 图1

数据库原理与应用教程期末测试题

数据库原理与应用教程 期末测试题(一) 一、填空题(每空1分,共10分) 1.数据库系统的核心是___数据库管理系统__。 2.在关系模型中,实体以及实体间的联系都是用__关系(二维表)____来表示的。3.设关系模型R(A,B,C),F是R上的函数依赖集,F={A→B,C→B},则R的候选码为__(A,C)_______。 4.层次模型用“树结构”来表示数据之间的联系,网状模型用“___图状结构______” 来表示数据之间的联系。 5.SQL Server2005中,一个简单的数据库可以只有一个___数据______文件和一个日志文件。6.聚集索引和非聚集索引的存储结构都采用___B树____索引结构。 7.一个事务必须具有的四个属性是原子性、一致性、__隔离性__和持久性。 1、8.在T-SQL中,查询表中数据时,可用_____DISTINCT______关键字滤掉重复行。9.调用标量函数时必须提供至少由两部分组成的名称,即___拥有者_____. 函数名。10.DML 触发器是当数据库服务器中发生数据操作语言事件时会自动执行的存储过程。 二、选择题(每小题1分,共20分) 1、数据管理的发展不包括下面哪个阶段() (A)文件系统(B)数据库系统 (C)人工管理(D)统一管理 2、一个学生可以同时借阅多本书,一本书只能由一个学生借阅,学生和图书之间是什 么样的联系() (A)一对一(B)一对多 (C)多对多(D)以上全不是 3、如果事务1将数据库中的A值从200改为300,事务2读A值为300,事务1又将 刚才的操作撤销,A值恢复为200,那么事务2读取了“脏”数据。这种情况 是由于数据库保护中的那方面不当而引起的() (A)并发控制 (B)完整性约束 (C)安全性控制(D)数据库的恢复 4、在关系模型中,“元组”是指( B ) (A)表中的一行(B)表中的一列 (C)表中的一个数据(D)表中的一个成分 5、有学生、选修和课程三个关系,学生S(学号,姓名,性别….),课程C(课程号,

数据库原理及应用(第2版)习题参考答案..

第1章数据概述 一.选择题 1.下列关于数据库管理系统的说法,错误的是C A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是D A.用文件管理数据,难以提供应用程序对数据的独立性 B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制 D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率 3.下列说法中,不属于数据库管理系统特征的是C A.提供了应用程序和数据的独立性 B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合 C.用户访问数据时,需要知道存储数据的文件的物理信息 D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失 5.在数据库系统中,数据库管理系统和操作系统之间的关系是D A.相互调用 B.数据库管理系统调用操作系统 C.操作系统调用数据库管理系统 D.并发运行 6.数据库系统的物理独立性是指D A.不会因为数据的变化而影响应用程序 B.不会因为数据存储结构的变化而影响应用程序 C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序 7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于A A.系统软件B.工具软件 C.应用软件D.数据软件 8.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是B A.数据库B.操作系统 C.应用程序D.数据库管理系统 9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是D A.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端 B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件 C.客户/服务器结构比文件服务器结构的网络开销小 D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享

数据库原理复习练习题含答案(4)

数据库原理复习练习题含答案 第10章数据库设计 1.试说明数据库设计的特点。 答:综合性、结构设计和行为设计相分离。 2.简述数据库的设计过程。 答:设计分为如下几个阶段。 ●需求分析。 ●结构设计,包括概念结构设计、逻辑结构设计和物理结构设计。 ●行为设计,包括功能设计、事务设计和程序设计。 ●数据库实施,包括加载数据库数据和调试运行应用程序。 ●数据库运行和维护阶段。 3.数据库结构设计包含哪几个过程? 答:包括概念结构设计、逻辑结构设计和物理结构设计。 4.需求分析中发现事实的方法有哪些? 答:检查文档、面谈、观察操作中的业务、研究和问卷调查等。 5.概念结构应该具有哪些特点? 答: ?有丰富的语义表达能力。能表达用户的各种需求,包括描述现实世界中各种事物和事物与事物之间的联系,能满足用户对数据的处理需求。 ?易于交流和理解。概念结构是数据库设计人员和用户之间的主要交流工具,因此必须能通过概念模型和不熟悉计算机的用户交换意见,用户的积极参与是数据库成功的关键。 ?易于更改。当应用环境和应用要求发生变化时,能方便地对概念结构进行修改,以反映这些变化。 ?易于向各种数据模型转换,易于导出与DBMS有关的逻辑模型。 6.概念结构设计的策略是什么? 答:概念结构设计的策略主要有如下几种: ?自底向上。先定义每个局部应用的概念结构,然后按一定的规则把它们集成起来,从而得到全局概念结构。 ?自顶向下。先定义全局概念结构,然后再逐步细化。 ?由里向外。先定义最重要的核心结构,然后再逐步向外扩展。 ?混合策略。将自顶向下和自底向上方法结合起来使用。先用自顶向下设计一个概念结构的框架,然后以它为框架再用自底向上策略设计局部概念结构,最后把它们集成起来。 7.什么是数据库的逻辑结构设计?简述其设计步骤。 答:逻辑结构设计的任务是把在概念结构设计中设计的基本E-R模型转换为具体的数据库管

华南师范大学《数据库原理》期末考试复习题

一、单选题 1 ( )将访问许可权分配给一定的角色,用户通过饰演不同的角色获得角色所拥有的访问许可权. A、强制存取控制 B、自主存取控制 C、视图机制 D、基于角色的访问控制 答案:D 2 SQL的默认策略是任何与( )约束相违背的更新均为系统拒绝. A、用户定义的完整性 B、实体完整性 C、参照完整性 D、用户定义的完整性和参照完整性 答案:C 3 用户标识与系统鉴别属于( )技术. A、访问控制 B、接入控制 C、完整性约束 D、恢复 答案:A 4 ( )是相互矛盾的,数据库物理设计过程中需要对它们进行折中权衡. A、时间效率,维护代价 B、时间效率,空间效率 C、时间效率,空间效率,维护代价 D、空间效率,维护代价 答案:C 5 在关系演算中,元组变量的变化围是( ). A、某一命名的关系 B、数据库中的所有关系 C、某一个域 D、数据库中的所有域 答案:C 6 下列聚合函数中不忽略空值(null) 的是() A、SUM (列名) B、MAX (列名) C、COUNT ( * ) D、AVG (列名) 答案:C 7 SQL中,下列涉及空值的操作,不正确的是()

B、AGE IS NOT NULL C、AGE = NULL D、NOT (AGE IS NULL) 答案:C 8 SQL的全局约束是指基于元组的检查子句和() A、非空值约束 B、域约束子句 C、断言 D、外键子句 答案:C 9要保证数据库逻辑数据独立性,需要修改的是( ) A、模式 B、模式与模式的映射 C、模式与外模式的映射 D、模式 答案:C 10 ( )是关系代数的基本运算之一. A、交 B、除 C、关系模型 D、广义笛卡儿积 答案:D 11 设关系R有M个元组,关系S有N个元组,则关系R和S的笛卡尔积有( )个元组. A、M B、N C、M*N D、M+N 答案:C 12 单个用户使用的数据视图的描述称为() A、外模式 B、概念模式 C、模式 D、存储模式 答案:A 13 判断对并发事务正确的调度是( ). A、并发事务的执行结果与并行化执行结果事务是否一致 B、事务间无冲突 C、并发事务的执行结果与串行化执行结果事务是否一致

数据库原理及应用--课后答案

数据库原理及应用 课后答案 第一章 选择题 1、A。 从数据库管理系统的角度看,数据库系统的结构通常分为三级模式的总体结构,在这种模式下,形成了二级映像,实现了数据的独立性。其中三级模式结构指的是外模式、模式和内模式,二级映像指的是外模式/模式映像、模式/内模式映像。对于外模式/模式映像,当模式改变时,相应的外模式/模式映像作相应的改变,以使外模式保持不变,而应用程序是依据数据的外模式来编写的,外模式不变,应用程序就没必要修改,这保证了数据与程序的逻辑独立性。对于模式/内模式映像,当数据库的存储结构变了,模式/内模式映像会作相应的改变,以使模式保持不变,而模式不变,与模式没有直接联系的应用程序也不会改变,这保证了数据与程序的物理独立性。 数据逻辑独立性指的就是当模式改变时,外模式和应用程序不需要改变,所以选项A正确。C选项的内模式改变,模式不变指的是数据的物理独立性,所以C选项不正确,B选项中前后两句与C选项相比顺序不符,所以B选项不正确。D选项中,应为“模式和应用程序不变”,不应为“外模式”,所以D选项不正确。 2、B。 DB指的是数据库(DataBase),DBMS指的是数据库管理系统(DataBase Management System),DBS指的是数据库系统(DataBase System),DBA指的是数据库管理员(Database Administrator),Data指的是数据。

由书中概念易得DBS(数据库系统)包括DBMS(数据库管理系统),DBMS管理和控制DB(数据库),而DB载入、存储、重组与恢复Data(数据)。所以B选项正确。 3、C。 数据库系统的特点有:⑴、实现数据共享;⑵、减少数据冗余度;⑶、保持数据的一致性; ⑷、数据的独立性;⑸、安全保密性;⑹、并发控制;⑺、故障恢复 由以上可得C选项错误,应改为数据冗余度“低”。 4、C。 DB是长期储存在计算机内、有组织的、可共享的大量数据集合;DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问计算机软件、硬件和数据资源组成的系统;DBMS 是把用户对数据的操作转化为对系统存储文件的操作,有效地实现数据库三级(外模式、模式和内模式)之间的转化;MIS指的是管理信息系统(Management Information System),是一个以人为主导,利用计算机硬件、软件及其他办公设备进行信息的收集、传递、存贮、加工、维护和使用的系统。由以上概念可知,位于用户和数据库之间的一层数据管理软件是DBMS。所以C选项正确。 5、C。 书中图1.6明确指出模式/内模式映像把概念数据库与物理数据库联系起来,所以C选项正确。 6、C。 数据库有这样三层关系,第一层和第三层不能直接发生关系,所以D选项不正确,内模式与外模式没有直接关系,应改为“模式与应用程序不变”。

数据库原理复习题2017

数据库原理及应用 复习题 2017-4-28 一、选择题 1.数据库系统及文件系统的主要区别是 [ ] A.数据库系统复杂,而文件系统简单 B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C.文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 2.数据库系统中,对用户使用的数据视图的描述称为 [ ] A.概念模式B.内模式 C.存储模式D.外模式 3.以下错误的表达是 [ ] A.数据受数据类型和取值范围的约束;

B.数据有定性表示和定量表示之分; C.数据是信息的载体,并具有多种表现形式; D.数据有“型”和“值”之分,“型”就是数据的规模或大小;4.设有关系R()和关系S(),那么及R?S等价的关系代数表达式 1=2 是 [] A.σ1=5(R?S)B.σ1=5(R×S)C.σ1=2(R?S)D.σ1=2(R×S) 5.结构化查询语言是一种关系数据库语言,其主要功能有 [ ] A.数据定义、数据操作、数据安全B.数据安全、数据编辑、数据并发控制 C.数据定义、数据操作、数据控制D.数据查询、数据更新、数据输入输出 6.概念结构设计阶段得到的结果是 [ ] A.数据字典描述的数据需求 B.图表示的概念模型 C.某个所支持的数据模型 D.包括存储结构和存取方法的物理结构 7.关系R和S进行自然连接时,要求R和S含有一个或多个公共[ ] A.元组 B.行 C.记录 D.属性

8.若事务T对数据对象A加上X锁,则 [ ] A.只允许T修改A,其他任何事务都不能再对A加任何类型的锁 B.只允许T读取A.其他任何事务都不能再对A加任何类型的锁 C. 只允许T读取和修改A,其他任何事务都不能再对A加 任何类型的锁 D.只允许T修改A,其他任何事务都不能再对A加X锁9.在关系数据库系统中,为了简化用户查询操作,而又不增加数据的存储空间,常用的方法是创建 [] A.另一个表B.游标C.视图D.索引 10.消除了部分函数依赖的1的关系模式,必定是[] A.1 B.2 C.3 D.4 6. 在结构化方法中,用数据流程图()作为描述工具的软件开发阶段是。 A、可行性分析 B、需求分析 C、详细设计 D、程序编码 7. 在软件开发中,下面任务不属于设计阶段的是。 A、数据结构设计 B、给出系统模块结构 C、定义模块算法 D、定义需求并建立系统模型

数据库原理及应用期末考试..

综合题 一、 1.使用Transact—SQL语言创建教学管理数据库,创建两个表学生信息(学号,姓名,性别,籍贯,班级编号)和成绩表(学号,课程编号,成绩,是否重修)。其中,学生信息表中学号为主键,其他信息都不允许为空。通过学号与成绩表形成一个一对多的关系,成绩表中的成绩的默认值为0,但必须在0~100之间。注:将学号设置为主键,主键名为pk_xh; 为成绩添加默认值约束,约束名为df_xb,其值为“0”; 为成绩添加check约束,约束名为诚恳ck_xb, 在0~100之间。 CREATE DATABASE 教学管理 use 教学管理 go create table 学生信息( 学号 varchar(20) NOT NULL PRIMARY KEY, 姓名 varchar(20) NOT NULL , 性别 varchar(10) NOT NULL, 籍贯 varchar(20) NOT NULL, 班级编号 varchar(20) NOT NULL ) go create table 成绩表 ( 学号 varchar(20) NOT NULL FOREIGN KEY REFERENCES 学生信息(学号), 课程编号 varchar(20) NOT NULL, 成绩 numeric(5,2) DEFAULT (0) CHECK(成绩)=0 and 成绩<=100) , 是否重修 varchar(8) NOT NULL ) go 2.写出实现各查询功能的SELECT语句。 (1)统计班级编号为1002的学生人数。 (2)查询课程编号为“003”的课程成绩高于该门课程平均分的学生信息。(3)在“学生信息”表中找出姓“王”的学生信息。 (4)将“成绩”表中的课程编号为“001”的成绩增加10分。 (5)列出每个同学的学号、姓名及选修课程的平均成绩情况,没有选修的同学也列出。 3.创建一个名为stud_view2的视图,该视图可以用来查看每个学生的选修课程

数据库原理及应用

数据库原理及应用 数据库技术简介 数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。 第一章绪论 1.1 数据库系统概述 1.1.1 四个基本概念 数据(Data) 数据库(Database)数据库管理系统(DBMS) 数据库系统(DBS) 一、数据 数据(Data)的定义 数据是信息的具体表现形式 描述事物的符号记录 数据的表现形式——数字文字图形图像声音等 各类数据必须数字化后才能加工处理。 数据与其语义是不可分的 例如:93是一个数据 语义1:学生某门课的成绩 语义2:某人的体重 语义3:计算机系2007级学生人数 例如:学生档案中的一条记录:(李明男1982 江苏计算机系2000) 二、数据库(续) 数据库的定义 数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。 三、数据库管理系统 什么是DBMS 数据库管理系统(Database Management System,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。 DBMS的用途 组织和存储好大量的数据,并提供方便、高效地检索数据和维护数据的手段。 DBMS的主要功能: 数据定义功能 数据组织 存储和管理 数据操纵功能 数据库的事务管理和运行管理 数据库的建立和维护功能 其它功能 四、数据库系统 什么是数据库系统

数据库系统(Database System,简称DBS)是指在计算机系统中引入数据库后的系统。 数据库系统的构成 数据库 数据库管理系统(及其开发工具) 应用系统 数据库管理员(DBA) 1.1.2 数据管理技术的产生和发展 数据管理:是指对数据的分类、组织、编码、存储、查询和维护等活动,是数据处理的中心环节。 数据处理:是指对数据进行收集、组织、存储、加工、抽取和传播等一系列活动的总和。其目的是从大量的、原始数据中抽取、推导出对人们有价值的信息。 数据管理技术的发展动力:应用需求的推动、计算机软/硬件的发展 数据管理技术的发展过程 人工管理阶段(40年代中--50年代中) 文件系统阶段(50年代末--60年代中) 数据库系统阶段(60年代末--现在) 一、人工管理 时期 40年代中--50年代中 产生的背景 应用需求科学计算 硬件水平纸带、卡片、磁带 软件水平没有操作系统 处理方式批处理 特点:数据不保存、数据由程序各自管理(逻辑结构、存储结构、存取方法、输入方式等) 数据不共享:一组数据只能对应一个程序 数据不具独立性:数据的结构发生变化后(物理或逻辑上),应用程序必须做相应的修改。 应用程序与数据的对应关系(人工管理阶段) .. 二、文件系统 时期

数据库原理复习资料与答案

数据库原理习题 一、核心知识点 1、数据库系统和文件系统的比较。 文件系统:数据可长期保存、由文件系统管理数据,但是数据共享性差,冗余度大,数据独立性差; 数据库系统:数据库实现整体数据的结构化、数据的共享性高,冗余度低,意扩充、数据独立性高、数据由DBMS统一管理和控制 2、简述数据库系统的三级模式结构。 外模式/模式、模式、内模式 3、简述数据库系统三级模式结构中的两级映像,并说明其优点。 两级映像:外模式/模式映像 模式/内模式 优点:这两级映像保证了数据库系统中的数据具有较高的逻辑独立性和物理独立性 4、简述数据模型的三要素。 数据结构、数据操作、数据的完整性约束 5、简述数据库独立性的特点。 数据独立性是由DBMS二级映像功能来保证的,数据与程序的独立性大大减少了应用程序的维护和修改 6、简述数据库系统的组成部分 数据库、硬件、软件、人员 7、简述DBA的主要职责。 数据库管理员(DBA)负责全面管理和控制数据库系统,其主要职责有;设计与定义数据库系统;帮助最终用户使用数据库系统;监督与控制数据库系统的使用和运行;转储与恢复数据库;改进和重组数据库系统,调优数据库系统的性能;重构数据库 8、简述关系模型的特点。 关系中每一个字段也称字段,不可再分,是最基本的单位;每一列数据项是同属性的。列数根据需要而设,且各列的顺序是任意的;每一行记录由一个事物的诸多属性组成,记录的顺序可以是任意的;一个关系是一张二维表,不允许有相同的字段名,也不允许有相同的记录行

9、简述关系模型的组成部分。 关系数据结构、关系操作集合、关系完整性约束 10、简述关系的性质。 1对1 1对0..* 1对1..* 关系中不允许出现相同的元组 关系中元组的顺序(即行序)可任意 关系中属性的顺序可任意 同一属性名下的各个属性值必须来自同一个域,必须是同一类型的数据 关系中各个属性必须有不同的名字,不同的属性可来自同一个域,即它们的分量可以取自同一个域。 关系中每一个分量必须是不可分的数据项,或者说所有的属性值都是原子的,即是一个确定的值,而不是值的集合。 11、简述关系的完整性。 关系完整性是为保证数据库中数据的正确性和相容性,对关系模型提出的某种约束条件或规则。完整性通常包括域完整性,实体完整性、参照完整性 须满足的完整性约束条件。 12、简述自然连接和等值连接的区别。 连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉 13、简述视图和关系的区别。 计算机数据库中的视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。也是机械制图术语,在机械制图中,将物体按正投影法向投影面投射时所得到的投影称为“视图”。

数据库原理与应用期末复习总结含试题及其答案

数据库原理综合习题答案 1.1名词解释 (1) DB:即数据库(Database),是统一管理的相关数据的集合。DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。 (2) DBMS:即数据库管理系统(Database Management System),是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。 (3) DBS:即数据库系统(Database System),是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。 (4) 1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,那么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。 (5) 1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。 (6) M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。 (7) 数据模型:模型是对现实世界的抽象。在数据库技术中,表示实体类型及实体类型间联系的模型称为“数据模型”。它可分为两种类型:概念数据模型和结构数据模型。 (6) 概念数据模型:是独门于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构。 (9) 结构数据模型:是直接面向数据库的逻辑结构,是现实世界的第二层抽象。这类模型涉及到计算机系统和数据库管理系统,所以称为“结构数据模型”。结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。它主要有:层次、网状、关系三种模型。 (10) 层次模型:用树型结构表示实体类型及实体间联系的数据模型。 (11) 网状模型:用有向图结构表示实体类型及实体间联系的数据模型。 (12) 关系模型:是目前最流行的数据库模型。其主要特征是用二维表格结构表达实体集,用外鍵表示实体间联系。关系模型是由若干个关系模式组成的集合。 (13) 概念模式:是数据库中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性、安全性等要求。 (14) 外模式:是用户与数据库系统的接口,是用户用到的那部分数据的描述。 (15) 内模式:是数据库在物理存储方面的描述,定义所有的内部记录类型、索引和文件的组成方式,以及数据控制方面的细节。 (16) 模式/内模式映象:这个映象存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性,即概念记录和内部记录间的对应性。此映象一般在内模式中描述。 (17) 外模式/模式映象:这人映象存在于外部级和概念级之间,用于定义外模式和概念模式间的对应性,即外部记录和内部记录间的对应性。此映象都是在外模式中描述。 (18) 数据独立性:在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。 (19) 物理数据独立性:如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。也就是对模式的修改尽量不影响概念模式。

数据库原理复习资料整理

第一章 1.四大基本概念: 数据:数据库中存储的基本对象,它是描述事物的符号记录。种类有:文字、图形、图象、声音等。特点是:数据与其语义是不可分的。 数据库:(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。其特点是:数据按一定的数据模型组织、描述和储存;可为各种用户共享;冗余度较小;数据独立性较高;易扩展。(特点:永久存储、有组织、可共享) 数据库管理系统:是位于用户与操作系统之间的一层数据管理软件。 数据库管理系统的主要功能:数据定义功能;数据组织、存储和管理;数据操纵功能;数据库的事物管理和运行管理;数据库的建立和维护功能;其他功能。 数据库系统:是指在计算机系统中引入数据库后的系统。一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。 在不引起混淆的情况下常常把数据库系统简称为数据库。 2.数据管理技术的三个阶段及其特点 人工管理阶段:特点:1、数据不保存。 2、没有软件系统对数据进行管理。 3、这一时期没有文件的概念,数据的组织方式必须由程序员自行设计。 4、一组数据对应一组程序,数据是不共享的。 5、数据不具有独立性,当数据结构发生变化时,应用程序要变化。 文件系统阶段:特点:1、数据可以长期保存。 2、由文件系统管理数据。 3、数据共享性差, 冗余度大—文件是面向应用的。 4、数据独立性差—是不具有弹性的无结构的数据集合,文件之间是孤立的,不能反映事物间联系。 数据库系统阶段:特点:数据的管理者:DBMS 数据面向的对象:现实世界 数据的共享程度:共享性高 数据的独立性:高度的物理独立性和一定的逻辑独立性 数据的结构化:整体结构化 数据控制能力:由DBMS统一管理和控制 3、数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据有DBMS统一管理和控制。 4、数据模型的组成要素:数据结构、数据操作和完整性约束。 数据结构是对系统静态特性的描述。 数据操作是对系统动态特性的描述。 5、概念模型: 基本概念:实体:客观存在并可相互区别的事物称为实体。 属性:实体所具有的某一特性称为属性。 码:唯一标识实体的属性集称为码。 域:属性的取值范围称为该属性的域。 实体型:具有相同属性的实体具有的共同的特征和性质,即: 用实体名及其属性名集合来抽象和刻画同类实体。

数据库原理与应用复习资料

数据库原理与应用 2018年春季学期复习资料 (仔细看复习资料,没有答案的题目,请自己解答) 一、概念题(自己准备答案) 1、封锁 封锁就是事物T在对某个数据对象,例如表、记录等操作之前,先向系统发出请求,对其加锁。 加锁后事物T就对该数据对象有了一定的控制,在事物T释放它的锁之前,其他的事务不能更新此数据对象,封锁是实现并发控制的一个非常重要的技术。封锁包含了排它锁和共享锁 2、游标 a允许定位在结果集的特定行 b从结果集的当前位置检索一行或一部分行 c支持对结果集中当前位置的行进行数据修改 d提供不同级别的可见性支持 3、并发控制 是指当同时有多个事务在执行时,为了保证一个事物的执行不受其他事物的干扰所采取的措施,并发控制的的主要方法是加锁。为了保证并发执行的事务是正确的,一般要求事物遵守两段锁协议。 4、关系完整性规则 是对关系的某种约束条件,用于保证关系数据库中数据的正确性和可靠性,它包含了实体完整性规则、参照完整性规则、域完整性规则。 5、DBMS的主要功能。 主要功能包括数据定义功能、数据操作功能、数据库运行管理功能、数据库的建立和维护功能、数据通讯接口功能、数据组织、存储和管理功能。 6、数据库设计的基本步骤。 数据库设计的基本步骤分为系统需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段 7、简述产生死锁的原因以及预防死锁的三种方法。 一个事物若申请锁未被批准,则需要等待其他事务释放锁,当事务之前出现循环等待时,如果不加干预,则会一起等待下去,从而产生死锁。 预防死锁的方法: 每个事物一次将所有要使用的数据全部加锁。 预先对数据对象规定一个封锁顺序,所有事务都按这个顺序封锁 当事物申请锁未被批准时,不等待加锁而是让一些事物回滚重新执行。 8、请画出数据库系统的组成结构图。 第 1 页共9 页

数据库原理及应用期末复习

. 数据库原理及应用期末复习 第一章绪论 1、数据(Data): 数据是数据库中存储的基本对象; 数据的定义:描述事物的符号记录; 数据的种类:文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等; 数据的含义称为数据的语义,数据与其语义是不可分的。 2、数据库(Database,简称DB): 定义:数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。 数据库的基本特征: 1) 数据按一定的数据模型组织、描述和储存; 2) 可为各种用户共享、易扩展、冗余度较小; 3) 数据独立性较高。 数据库具有永久存储、有组织和可共享三个基本特点。 3、数据库管理系统(DBMS): 数据库管理系统是位于用户与操作系统之间的一层数据管理软件。 主要功能: 1) 数据定义功能; 2) 数据组织、存储和管理; 3) 数据操纵功能; 4) 数据库的事务管理和运行管理; 5) 数据库的建立和维护功能; 6) 其他功能。 4、数据库系统(DBS): 定义:数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员系统构成。 5、数据库技术的产生和发展: 三个阶段:人工管理阶段、文件系统、数据库系统。 6、数据库系统的特点: 1) 数据结构化:不仅数据内部结构化,整体也是结构化的; 2) 数据的共享性高,冗余度低,易扩充; 3) 数据独立性高(物理逻辑性和逻辑独立性); 物理独立性:指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序不用改变。精选文档. . 逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,用户程序也可以不变。数据独立性是由DBMS的二级映像功能来保证的 4) 数据由DBMS统一管理和控制。 7、数据模型: (1)数据模型是数据库系统的核心和基础; (2)两类数据模型:

数据库原理及应用教学目的内容重点难点

《数据库原理及应用》课程授课目的、内容、方法、重点、难点及学时分配 一、课程的性质、目的与任务: 1 本课程的性质: 《数据库原理及应用》是信息管理专业开设的专业基础必修课之一。 2 本课程的目的: 本课程的主要目的是使学生掌握数据库的基本原理,应用规范化的方法进行数据库的开发和设计,并和具体的一种大型数据库管理系统相结合,熟练掌握数据库管理系统的管理、操作和开发方法。b5E2RGbCAP 3 本课程的任务: 通过本课程的学习,学生应能针对具体的案例进行数据调查分析、数据库逻辑结构设计、关系规范化及数据库物理结构设计,并能使用高级语言进行数据库应用程序开发。p1EanqFDPw 二、基本教案要求 了解数据库的基本概念、发展、结构体系及数据库新技术的发展方向等。 理解数据库的安全性、完整性、并发控制及数据恢复等概念。 掌握数据库的查询语言、关系理论及数据库的设计方法,掌握对数据库的安全性、完整性、并发控制及数据恢复的应用。DXDiTa9E3d

三、教案内容: <一)绪论4学时 1、数据库系统概述 (1)数据库的地位:数据库在信息领域的作用和地位 (2)四个基本概念:数据、数据库、数据库管理系统、数据库系统四个概念及相互间的关系。 (3)据管理技术的产生和发展:数据管理技术发展的三个阶段及每个阶段的环境、特点。 2、数据模型 (1)数据模型的组成要素:数据结构、数据操作、数据的约束条件 (2)概念模型:信息世界中的基本概念、实体之间的联系、概念模型的表示方法E-R图。 常用数据模型:层次模型、网状模型、关系模型,每种 模型从数据结构、完整性结束、数据存储、优缺点及典 型的数据库系统几个方面介绍。RTCrpUDGiT 3、数据库系统结构 数据库系统内部的模式结构:模式结构的概念、三级模式结构、二级映象功能及数据独立性 4、数据库系统的组成 (1)硬件平台:数据库平台对硬件平台的要求。

数据库原理复习题 (2)

一、填空 1.目前,数据库系统支持的主要数据模型有____模型、____模型和关系模型。2.与文件系统相比较,数据库系统的冗余度____,数据共享性__ ___。 3.关系模型的三类完整性是____、____和用户自定义完整性。若基本关系R中含有与另一个基本关系S的主码Ks相对应的属性组F,则对于R中每一个元组在F上的值必须为____或者___。 4.由于数据库系统在三级模式之间提供了___和____两层映象功能,这就保证了数据库系统具有较高的数据独立性。 5.1NF的关系消除_____依赖后,可将范式等级提高到2NF。2NF的关系消除_____依赖后,可将范式等级提高到3NF。 6.E-R图的主要元素是实体、属性和____。 7.关系代数中专门的关系运算包括:选择、投影、_____和____。 8.SQL语言中的GRANT语句的功能是____;REVOKE语句的功能是____。 9.数据库的逻辑模型设计阶段,任务是将____转换成关系模型。 二、选择 1.关系模型中,同一个表中的不同属性命名() A.可相同 B.必须相同 C.必须不同 D.可相同,但数据类型不同2.逻辑数据独立性是指() A.模式变,用户不变 B.模式变,应用程序不变 C.应用程序变,模式不变 D.子模式变,应用程序不变 3.进行自然联接运算的两个关系必须具有() A.相同属性个数 B.公共属性 C.相同关系名 D.相同关键字4.数据库具有( ),最小冗余,较高的数据独立性和易于扩充等特点。 A.程序结构化 B.程序标准化 C.数据模块化 D.数据结构化 5. 任何由二个属性组成的关系() A.可能为1NF B.可能为2NF C.可能为3NF D.必为3NF 6.数据库管理系统是位于____之间的一层数据管理软件。() A.硬件与软件 B.用户与操作系统 C.硬件与操作系统 D.数据库与操作系统 7.数据库中,层次模型() A.有且仅有一个结点无双亲,其他结点有且仅有一个双亲

数据库原理及应用

数据库原理及应用 1:ER图是表示概念模型的有效工具之一,在ER图中的菱形框表示 1.联系 2.实体 3.实体的属性 4.联系的属性 2:()完成对数据库数据的查询与更新 1.DCL 2.DDL 3.DML 4.DQL 3:如果关系模式R中的每一个非主属性既不部分依赖也不传递依赖于键,则称这个关系模式属于 1.第一范式 2.第二范式 3.第三范式 4.BC范式 4:SQL语言中,删除记录的命令是 1.DELETE 2.DROP

4.REMORE 5:数据库三级模式体系结构的划分,有利于保持数据库的 1.结构规范化 2.数据安全性 3.数据独立性 4.操作可行性 6:数据的管理方法主要有 1.文件系统和分布式系统 2.批处理系统和实时处理系统 3.数据库系统和文件系统 4.数据库系统和实时处理系统 7:下列哪一个不是数据库开发的可选数据库。 1.mysql 2. DB2 3.Oracle 4.Excel 8:绝大多数数据库系统的总体结构,都具有外模式、模式和内模式三级模式结构。描述数据库中全体数据的全局逻辑结构和特征的是 1.模式和内模式

3.模式 4.外模式 9:如果在关系的分片过程中使用了选择操作,则不可能是 1.水平分片 2.垂直分片 3.导出分片 4.混合分片 10:以下关于E-R图的叙述正确的是 1. E-R图建立在关系数据库的假设上 2. E-R图使用过程和数据的关系清晰,实体间的关系可导出应用过程的表示。 3. E-R图可将现实世界(应用)中的信息抽象地表示为实体以及实体间的联系 4. E-R图能表示数据生命周期。 11:SQL语言中,创建一个表的命令是 1.View 2.DROP 3.CLEAR 4.Create 12:位于用户和操作系统之间的一层数据管理软件是 1.DBS

2019年春《数据库原理与应用》期末考试复习资料

《数据库原理与应用》课程 2019 年春季期末考试复习资料 一、复习资料的相关说明 1、《数据库原理与应用》课程的考核方式:开卷 2、成绩评定:总评成绩 =40%阶段作业成绩(网上)+60%期末考试成绩 3、试卷结构: 必考题分值为 60 分:主观题40 分 +客观题 20 分。 扩展题 40 分,都是主观题。 二、期末考试必考题(占期末考试成绩60%) 提示:期末考试试题及选项顺序会随机。 本复习资料提供必考题的考试原题,提供和考题相关的知识材料,但不提供标准答案。 客观题:选择题(每题 2 分,共20 分) 1、(B)是指负责设计、建立、管理和维护数据库以及协调用户对数据库要求的个人和工作团队。 A 、最终用户B、数据库管理员C、应用程序员D、销售员 2、数据独立性是数据库技术的重要特点之一。所谓数据独立性是指(A)。 A 、数据和数据之间没有联系 B 、不同的数据被存放在不同的文件中 C、数据只能被对应的应用程序所使用 D 、数据与应用程序间相互独立 3、一般来讲班级与学生、公司与职员、省与市之间的联系类型是(D)。 A 、多对多B、一对一C、多对一D、一对多 4、数据库管理系统中的(B)功能实现对数据库的插入、删除、修改。 A 、数据定义 B 、数据操纵C、数据库的运行管理 D 、数据库的建立与维护 5、“以二维表的形式存储数据”描述了关系模型的(A)。 A 、数据结构B、规范性C、关系完整性D、数据独立性 6、下列(A)情况,适于建立索引。 A 、基本表的某列中记录数量特别多 B 、基本表的某列中记录数量特别少 C、经常进行插入操作的基本表的某列 D 、经常进行删除操作的基本表的某列 7、下列关于视图的描述正确的是(C)。 A 、视图的表现形式是由结点组成的有向图 B 、可以在视图中任意添加数据 C、视图是一个虚拟表,内容由查询定义 D 、视图只能建立在基本表上 8、下列说法中,( C)属于表设计原则。 A 、适当使用视图 B 、尽可能的建立触发器 C、遵守第三范式标准的数据库设计 D 、尽可能多地采用外键 9、数据库的备份不包括( A )。 A 、操作系统 B 、系统数据库C、用户数据库 D 、事务日志 《数据库原理与应用》第1 页,共 5页

相关文档
最新文档