当前位置:文档之家› 自考数据库系统原理完整版

自考数据库系统原理完整版

自考数据库系统原理完整版
自考数据库系统原理完整版

自考《数据库系统原理》串讲笔记

第一章数据库基础知识

学习目的与要求:

本章属于基础知识,主要是对一些概念的理解和记忆。没有难点,相对的重点是数据模型的四个层次,数据库管理系统的功能,数据库系统的全局结构。

考核知识点与考核要求

1.1数据管理技术的发展阶段(识记)

1.2数据描述的术语(领会)

1.3数据抽象的级别(领会)

1.4数据库管理系统(DBMS) (领会)

1.5数据库系统(DBS)(领会)

1.1 数据管理技术的发展

几个数据库的基本术语:

数据:描述事物的符号记录

数据处理:是指从某些已知的数据出发,推导加工出一些新的数据,这些新的数据又表示了新的信息。

数据管理:是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。

数据管理技术:对数据的收集、整理、组织、存储、维护、检索、传送等操作,基本目的就是从大量的,杂乱无章的,难以理解的数据中筛选出有意义的数据。

数据处理是与数据管理相联系的,数据管理技术的优劣,将直接影响数据处理的效率。

1.人工管理阶段(20世纪50年代中期以前)

1)数据不保存在机器中;

2)没有专用软件对数据进行管理;

3)只有程序的概念,没有文件的概念;

4)数据面向程序。

2. 文件系统阶段特点与缺陷(20世纪50年代后期至60年代中期)

1)数据可长期保存在磁盘上;

2)数据的逻辑结构与物理结构有了区别;

3)文件组织呈现多样化;

4)数据不再属于某个特定程序,可以重复使用;

5)对数据的操作以记录为单位。

文件系统三个缺陷:

1)数据冗余性

2)数据不一致性

3)数据联系弱

3.数据库阶段(20世纪60年代后~至今)

数据管理技术进入数据库阶段的标志是20世纪60年代末三件大事:

1)1968年美国IBM公司推出层次模型的IMS系统;

2)1969年美国CODASYL组织发布了DBTG报告。总结了当时各式各样的数据库,提出网状模型,尔后于1971年4月正式通过。

3)1970年美国IBM公司的E.F.Codd连续发表论文,提出关系模型,奠定了关系数据库的理论基础。

数据库管理阶段特点:

1)采用数据模型表示复杂的数据结构;

2)有较高的数据独立性;

3)数据库系统为用户提供了方便的用户接口。

4)数据库系统提供以下四个方面的数据控制功能:

①数据库的恢复;

②数据库的并发控制;

③数据库的完整性;

④数据库的安全性;

5)增加了系统的灵活性。

增加了系统的灵活性对数据的操作不一定以记录为单位,可以以数据项为单位。

数据库技术中的四个名词:DB、DBMS、DBS、数据库技术。其概念是不同的,要分清。

DB:数据库(Database)长期存储在计算机内、有组织的、统一管理的相关数据的集合。

DBMS:数据库管理系统(Database Management System),DBMS是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。

DBS:数据库系统(Database System),DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。

数据库技术:是一门研究数据库结构、存储、管理和使用的一门软件学科。

4.高级数据库阶段:

1)面向对象的概念建模

2)开放数据库互连技术

1.2 数据描述

在数据处理中,数据描述将涉及不同的范畴。从事物的特性到计算机中的具体表示,数据描述经历了三个阶段———概念设计、逻辑设计和物理设计。

1.概念设计中的的数据描述

1)实体

2)实体集

3)属性

4)实体标识符

2.逻辑设计中的数据描述

1)字段

2)记录

3)文件

4)关键码

3.物理设计中的数据描述

物理存储介质层次

1)高速缓冲存储器

2)主存储器

3)快擦写存储器

4)磁盘存储器

5)光盘存储器

6)磁带

物理存储中的数据描述

位、字节、字、块、桶和卷

4.数据联系的描述

联系及元数定义:

二元联系有以下三种类型:

1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,好么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。

1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。

M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。

1.3 数据抽象的级别

1.数据抽象的过程

根据抽象的级别定义了四种模型:

1)概念数据模型

2)逻辑数据模型

3)外部数据模型

4)内部数据模型

2.概念模型

1)四种模型中,概念模型的抽象级别最高。

2)概念模型的特点:(p12)

3.逻辑模型

逻辑模型的特点:(p13)

(1)~(4)

逻辑模型的分类:

1)层次模型

2)网状模型

3)关系模型

三种逻辑数据模型的比较?如P17图

4.外部模型

外部模型的特点:(p17)

从整个系统考察,外部模型的优点。

5.内部模型

是数据库最底的抽象,它描述数据在磁盘或磁带上的存储方式、存取设备和存取方法。

6.三层模式和两级映象

三层模式体系结构

1)外模式:是用户与数据库系统的接口,是用户用到的那部分数据的描述。

2)逻辑模式:是数据库中全部数据的整体逻辑结构的描述。

3)内模式:是数据库在物理存储方面的描述,定义所有内部记录类型、索引和文件的组织方式,以及数据控制方面的细节。

两级映象

外模式/逻辑模式映象:用于定义概念模式和内模式之间的对应性。一般在内模式中描述。

逻辑模式/内模式映象:用于定义外模式和概念模式间的对应性。一般在外模式中描述。

7.高度的数据独立性

什么叫数据独立性?

是指应用程序和数据库的数据结构之间相互独立,不受影响。在修改数据结构时,尽可能不修改应用程序,则称系统达到了数据独立性目标。

数据独立性分为物理数据独立性和逻辑数据独立性:

物理数据独立性:修改内模式时尽量不影响概念模式及外模式,则达到物理数据独立性。

逻辑数据独立性:修改概念模式时尽量不影响外模式和应用程序。

1.4 数据库管理系统(DBMS)

1.DBMS的目标与任务:

数据库管理系统的主要任务是完成用户对数据库的存取请求,即检索、插入、更新或删除等操作。

DBMS的目标:用户界面友好、功能完善、结构清晰、高效率、开放性

2.DBMS的工作模式(p20图)

3.DBMS的主要功能:

1)数据库的定义功能

2)数据库的操纵功能

3)数据库的保护功能(数据库恢复、数据库并发控制、数据库完整性和数据库安全性)

4)数据库的维护功能

5)数据字典

1.5 数据库系统(DBS)

1.DBS由四部分组成:数据库、硬件、软件、数据库管理员。

2.数据库管理员定义及职责。(素质+职责)

3.DBS的全局结构及DBS的效益。(数据库用户+界面+DBMS+磁盘+DBS的效益)

第二章数据库设计和ER模型

学习目的与要求:

本章总的目的要求是了解和掌握数据库应用系统设计的全过程。首先掌握ER模型和关系模型的基本概念,然后掌握概念设计中ER模型的设计方法,逻辑设计中ER模型向关系模型转换方法。

考核知识点与考核要求

2.1数据库系统生存期(领会)

2.2ER模型的基本概念(综合应用)

2.3关系模型的基本概念(综合应用)

2.4ER模型到关系模型的转换规则(综合应用)

2.5ER模型实例分析(简单应用)

2.6增强ER模型(简单应用)

从软件生存期谈起

软件生存期:是指从软件的规划、研制、实现、投入运行后的维护、直到它被新的软件所取代而停止使用的整个期间。它包括六个阶段:( 规需设编试运维 )

(1)规划阶段

(2)需求分析阶段

(3)设计阶段

(4)程序编制阶段

(5)调试阶段

(6)运行维护阶段

2.1 数据系统生存期

1.什么叫数据库系统生存期?

我们把数据库应用系统从开始规划、设计、实现、维护到最后被新的系统取代而停止使用的整个期间,称为数据库系统生存期。

2.这个生存期一般可划分成以下七个阶段:

规划、需求分析、概念设计、逻辑设计、物理设计、实现、运行维护。

2.2 ER模型的基本概念

1.ER模型的基本元素

实体、联系和属性

2.属性的分类(简单属性和复合属性、单值属性和多值属性、存储属性和派生属性)

3.联系的设计

4.ER模型的操作(分裂、合并和增删)

5.采用ER模型的数据库概念设计步骤

采用ER方法进行数据库概念设计分成三步进行:

首先设计局部ER模式

然后把各局部ER模式综合成全局ER模式

最后对全局ER模式进行优化

2.3 关系模型的基本概念

1.关系模型定义:用二维表格结构表示实体集、外键表示实体间联系的数据模型称为关系模型。2.基本术语有:字段(属性)、字段值(属性值)、记录(元组)、二维表格(元组集合、关系或实例)。在这里,括号中的表述为关系模型中的术语。它与表格中术语可以一一对应。还有,关系中属性个数称为元数,元组个数为基数。

3.键:由一个或几个属性组成。(注意键不一定是唯一的一个属性)。

1)超键:在关系中能唯一标识元组的属性集称为关系模式的超键。(注意,超键也是一个属性集,不一定只是一个属性)

2)候选键:不含有多余属性的超键称为候选键。

3)主键:用户选作元组标识的一个候选键为主键。

4)外键:某个关系的主键相应的属性在另一关系中出现,此时该主键在就是另一关系的外键,如有两个关系S和SC,其中S#是关系S的主键,相应的属性S#在关系SC中也出现,此时S#就是关系SC的外键。

4.关系的定义和性质

1)关系定义:关系是一个属性数目相同的元组的集合。

2)关系性质(p53)

5.三类完整性规则

1)实体完整性规则:要求关系中组成主键的属性上不能有空值。

2)参照完整性规则:要求不引用不存在的实体。

3)用户定义完整性规则:由具体应用环境决定,系统提供定义和检验这类完整性的机制。

2.4 E-R模型向关系模型的转换

E-R模型可以向现有的各种数据库模型转换,对不同的数据库模型有不同的转换规则。这里只讨论E-R模型向关系模型的转换方法。

1.E-R模型向关系模型的转换规则:

(1)实体类型的转换

将每个实体类型转换成一个关系模式,实体的属性即为关系的属性,实体标识符即为关系的键。

(2)联系类型的转换

1)实体间的联系是1:1

可以在两个实体类型转换成两个关系模式中的任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。

2)如实体间的联系是1:N

则在N端实体类型转换成的关系模式中加入1端实体类型转换成的关系模式的键和联系类型的属性。

3)如实体间的联系是M:N

则将联系类型也转换成关系模式,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合。

以上各转换规则,给出了一般情况下E-R模型向关系模型的转换方法。但在实际应用中往往还需要

根具实际情况进行具体处理。

下面以图书借阅系统的E-R模型转换为关系模型为例。

该例中,由于允许同一本书在不同的时间借给多个读者,特别是一个读者在不同的时间可以借同一本书。因而,在多对多联系“借阅”转换为关系模式时,仅有读者的编号和图书的编号是不能构成码的。

例如:

(,F33.33,2006-10-10:10:10,2007-02-20:3:00)(,F33.33,2007-5-26:4:00,NULL)

说明,按照上述介绍的转换方法得到的关系模型不一定是最好的。实际应用中,往往还要对得到的关系模型进行规范化。

2.5和2.6

实例分析,同学们多看书!

1.库存管理系统的ER模型及转换

2.人事管理信息系统的ER模型

3.住院管理信息系统的ER模型

4.公司车队信息系统的ER模型

更多优质自考资料尽在百度贴吧自考乐园俱乐部

()欢迎?加入...欢迎?交流...止不住的惊喜等着你.........

第三章关系模式设计理论

学习目的与要求:

本章特点是理论性较强,学习者应从概念着手,搞清概念间的联系和作用。

本章总的要求是:了解关系数据库规范化理论及其在数据库设计中的作用。

本章的重点是函数依赖、无损分解、保持依赖和范式。掌握这些概念并能运用它们分析模式分解的特点。

考核知识点与考核要求

3.1关系模式的设计准则(简单应用)

3.2函数依赖(FD)(简单应用)

3.3关系模式的分解特性(简单应用)

3.4范式

1NF、2NF、3NF(简单应用)BCNF(领会)

分解成BCNF模式集的“分解算法”(识记)

分解成3NF模式集的“合成算法”(综合应用)

模式设计方法小结(领会)

3.5多值依赖和第四范式(识记)

3.1 关系模式的设计准则

1.关系模式的冗余和异常问题

1)数据冗余

2)操作异常(修改异常、插入异常和删除异常)

2.关系模式的非形式化设计准则

1)关系模式的设计应尽可能只包含有直接联系的属性,不包括有间接联系的属性

2)关系模式的设计应尽可能使得相应关系中不出现插入、删除和修改异常。

3)关系模式的设计应尽可能使得相应关系中避免放置经常为空值的属性。

4)关系模式的设计应尽可能使得关系的等值连接在主键和外键的属性上进行,并且保证连接以后不会生成额外的元组。

3.2 函数依赖

1.函数依赖的定义

设有关系模式R(A1,A2,...An)或简记为R(U),X,Y是U的子集,r是R的任一具体关系,如果对r的任意两个元组t1,t2,由t1[X]=t2[X]导致t1[Y]=t2[Y],则称X函数决定Y,或Y函数依赖

于X,记为X→Y。X→Y为模式R的一个函数依赖。

这个定义可以这样理解:有一张设计好的二维表,X,Y是表的某些列(可以是一列,也可以是多列),若在表中的第t1行,和第t2行上的X值相等,那么必有t1行和t2行上的Y值也相等,这就是说Y函数依赖于X。

2.函数依赖的逻辑蕴涵

设F是关系模式R的一个函数依赖集,X,Y是R的属性子集,如果从F中的函数依赖能够推出X →Y,则称F逻辑蕴涵X→Y,记为F|=X→Y。

而函数依赖的闭包F + 是指被F逻辑蕴涵的函数依赖的全体构成的集合。

3.键和FD的关系

键是唯一标识实体的属性集。对于键和函数依赖的关系:有两个条件:设关系模式R(A1,A2...An),F是R上的函数依赖集,X是R的一个子集:

1αX→A1A2...An∈F +(它的意思是X能够决定唯一的一个元组)

2α不存在X的真子集Y,使得Y也能决定唯一的一个元组,则X就是R的一个候选键。(它的意思是X能决定唯一的一个元组但又没有多余的属性集)

包含在任何一个候选键中的属性称为主属性,不包含在任何键中的属性为非主属性(非键属性),(注意)主属性应当包含在候选键中。

4.函数依赖(FD)的推理规则

前面我们举的例子中是以实际经验来确定一个函数依赖的逻辑蕴涵,但是我们需要一个推理规则才能完全确定F或F+的所有函数依赖。

设有关系模式R(U),X,Y,Z,W均是U的子集,F是R上只涉及到U中属性的函数依赖集,推理规则如下:

A1α自反性:如果Y X U,则X→Y在R上成立。

A2α增广性:如果X→Y为F所蕴涵,Z U,则XZ→YZ在R上成立。(XZ表示X∪Z,下同)

A3α传递性:如果X→Y和Y→Z在R上成立,则X→Z在R上成立。

A4α合并性:如果X→Y和X→Z成立,那么X→YZ成立。

A6α分解性:如果X→Y和Z Y成立,那么X→Z成立。

A5α伪传性:如果X→Y和WY→Z成立,那么WX→Z成立。

A7α复合性:{X→Y, W→Z} |=XW →YZ。

A8α通用一致性定理:{X→Y, W→Z } |=x ∪(X-Y) →YZ。

5.函数依赖推理规则的完备性

函数依赖推理规则系统(自反性、增广性和传递性)是完备的。由推理规则的完备性可得到两个重要结论:

1α属性集X + 中的每个属性A,都有X→A被F逻辑蕴涵,即X + 是所有由F逻辑蕴含X→A的属性A的集合。

2αF+ 是所有利用Amstrong推理规则从F导出的函数依赖的集合。

6.函数依赖集的等价和覆盖

在关系模式R(U)上的两个函数依赖集F和G,如果满足F + =G + ,则称F和G是等价的,

称F和G等价也称F 覆盖 G或G覆盖F。

每个函数依赖集F都可以被一个右部只有单属性的函数依赖集 G所覆盖。

如果函数依赖集合F满足:

(1)F中每一个函数依赖的右部都是单属性;

(2)F中的任一函数依赖X→A,其F-{X→A}是不等价的;

(3)F中的任一函数依赖X→A,Z为X的子集。(F-{X→A})∪{Z→A}与F不等价。

则称F为最小函数依赖集合。

如果函数依赖集F和G等价,并且G是最小集,那么称G是F的一个最小覆盖。

这一段并不要求掌握最小集的求法,但是应当通过其求法理解最小集的概念。

3.3 关系模式分解特性

1.模式分解中存在的问题

模式分解

就是将一个泛关系模式 R分解成数据库模式ρ,以ρ代替R的过程。它不仅仅是属性集合的分解,它是对关系模式上的函数依赖集、以及关系模式的当前值分解的具体表现。

分解一个模式有很多方法,但是有的分解会出现失去函数依赖、或出现插入、删除异常等情况,而有的分解则不出现相关问题。

衡量一个分解的标准有三种:分解具有无损联接;分解要保持函数依赖;分解既要保持依赖,又要具有无损联接。

那么什么是无损联接呢?什么又是保持依赖?

2.无损联接的定义和性质

设R是一关系模式,分解成ρ={R1,R2,...,Rk},F是R上的一个函数依赖集。无损联接就是指R中每一个满足F的关系r(也就是一个关系实例)都有r=π R1 (r)|X|π R2 (r)...|X|π R3 (r),即r为它在Ri上的投影的自然联接。

最简单的理解,也就是说,分解后的关系自然连接后完全等于分解前的关系,则这个分解相对于F是无损联接分解。

设R的分解为ρ={R1,R2},F为R所满足的函数依赖集,则分解ρ具有无损联接性的充分必要条件是:R1∩R2→(R1-R2)

R1∩R2→(R2-R1)

也就是说,分解后的两个模式的交能决定这两个模式的差集,即R1、R2的公共属性能够函数决定R1或R2中的其他属性,这样的分解就必定是无损联接分解。

3.保持函数依赖的分解

在分解过程中,要求模式分解的无损联接是必要的,只有无损联接分解才能保证任何一个关系能由它的那些投影进行自然联接得到恢复。

同时,分解关系模式时还应保证关系模式的函数依赖集在分解后仍在数据库模式中保持不变,这就是保持函数依赖的问题。也就是所有分解出的模式所满足的函数依赖的全体应当等价于原模式的函数依赖集。只有这样才能确保整个数据库中数据的语义完整性不受破坏。

3.4 范式

1.1NF、2NF、3NF、BCNF的定义:

1NF:第一范式

即关系模式中的属性的值域中每一个值都是不可再分解的值。如果某个数据库模式都是第一范式的,则称该数据库模式是属于第一范式的数据库模式。

2NF:第二范式

如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键,则称为第二范式模式。

非主属性、完全函数依赖、候选键

三个名词的含义。

候选键就是指可以唯一决定关系模式R中某元组值且不含有多余属性的属性集。

非主属性也就是非键属性,指关系模式R中不包含在任何建中的属性。

设有函数依赖W→A,若存在X?W,有X→A成立,那么称W→A是局部依赖,否则就称W→A是完全函数依赖。

在分析是否为第2范式时,应首先确定候选键,然后把关系模式中的非主属性与键的依赖关系进行考察,是否都为完全函数依赖,如是,则此关系模式为2NF。如果数据库模式中每个关系模式都是2NF的,则此数据库模式属于2NF的数据库模式。

3NF:第三范式

如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R为第三范式的模式。

这里首先要了解传递依赖的含义:在关系模式中,如果Y→X,X→A,且X不决定Y和A不属于X,那么Y→A是传递依赖。

注意的是,这里要求非主属性都不传递依赖于候选键。

BCNF:

这个范式和第三范式有联系,它是3NF的改进形式。若关系模式R是第一范式,且每个属性都不传递依赖于R的候选键。这种关系模式就是BCNF模式。

纵观四种范式,可以发现它们之间存在如下关系:

5.分解成BCNF模式集的算法

对于任一关系模式,可找到一个分解达到3NF,且具有无损联接和保持函数依赖性。而对于BCNF 分解,则可以保证无损联接但不一定能保证保持函数依赖集。

无损联接分解成BCNF模式集的算法:

(1)置初值ρ={R};

(2)如果ρ中所有关系模式都是BCNF,则转(4);

(3)如果ρ中有一个关系模式S不是BCNF,则S中必能找到一个函数依赖集X→A有X不是S的键,且A不属于X,设S1 =XA,S2 =S-A,用分解S1 ,S2 代替S,转(2);

(4)分解结束。输出ρ。

在这个过程中,重点在于(3)步,判断哪个关系不是BCNF,并找到X和A。这里,S的判断用BCNF 的定义,而X不是S的键则依靠分析。

6.分解成3NF模式集

算法:

(1)如果R中的某些属性在F的所有依赖的左边和右边都不出现,那么这些属性可以从R中分出去,单独构成一个关系模式。

(2)如果F中有一个依赖X→A有XA→R,则ρ={R},转(4)

(3)对于F中每一个X→A,构成一个关系模式XA,如果F有有X→A 1 ,X→A 2 ...X→A n ,则可以用模式XA 1 A 2 ...A n 代替n个模式XA 1 ,XA 2 ...XA n ;

(4)w分解结束,输入ρ。

这个过程的重点是这一句“对于F中每一个X→A,构成一个关系模式XA”,这使我们的分解十分容易,然后依据合并律(合并律:如果X→Y和X→Z成立,那么X→YZ成立)将有关模式合并即得到所需3NF模式。

7.模式设计方法的原则

关系模式R相对于函数依赖集F分解成数据库模式ρ={R 1 ,R 2 ...R k },一般具有下面四项特性:

ρ中每个关系模式R i上应具有某种范式性质(3NF或BCNF)

无损联接性。

保持函数依赖集。

最小性,即ρ中模式个数应最少且模式中属性总数应最少。

一个好的模式设计方法应符合下列三条原则:

表达性

分离性

最小冗余性

8.多值依赖与第四范式(4NF)

例:

学校中某一门课程由多个教师讲授,他们使用相同的一套参考书。

关系模式Teaching(C, T, B)

课程C、教师T 和参考书B

多值依赖与第四范式

Teaching∈BCNF:

Teach具有唯一候选码(C,T,B),即全码

Teaching模式中存在的问题

(1)数据冗余度大:有多少名任课教师,参考书就要存储多少次。

(2)插入操作复杂:当某一课程增加一名任课教师时,该课程有多少本参照书,就必须插入多少个元组。

例如物理课增加一名教师刘关,需要插入两个元组:

(物理,刘关,普通物理学)

(物理,刘关,光学原理)

(3) 删除操作复杂:某一门课要去掉一本参考书,该课程有多少名教师,就必须删除多少个元组。

(4) 修改操作复杂:某一门课要修改一本参考书,该课程有多少名教师,就必须修改多少个元组。

产生原因

存在多值依赖。

1)多值依赖

设R(U)是一个属性集U上的一个关系模式, X、 Y和Z是U的子集,并且Z=U-X-Y,多值依赖 X→→Y成立当且仅当对R的任一关系r,r在(X,Z)上的每个值对应一组Y的值,这组值仅仅决定于X值而与Z值无关。

例 Teaching(C, T, B)

对于C的每一个值,T有一组值与之对应,而不论B取何值。

2)第四范式(4NF)

关系模式R∈1NF,如果对于R的每个非平凡多值依赖X→→Y(Y X),X都含有候选码,则R∈4NF。

如果R ∈ 4NF,则R ∈ BCNF

不允许有非平凡且非函数依赖的多值依赖

允许的是函数依赖(是非平凡多值依赖)

第四章关系运算

学习目的与要求:

本章总的要求是:深刻理解关系模型的运算理论,了解查询优化的意义和启发式优化算法。

本章的重点是关系代数运算,应熟练掌握。关系演算是本章的难点。

考核知识点和考核要求

4.1关系代数

4.1.1关系代数的五个基本操作(并、差、笛卡儿积、投影、选择)(综合运用)

4.1.2关系代数的四个组合操作(交、连接、自然连接、除法) (综合运用)

4.1.3关系代数表达式的应用(综合运用)

4.1.4关系代数的两个扩充操作(外连接、外部并)(领会)

4.2关系演算

4.2.1元组关系演算的定义及表达式的含义(简单应用)

4.2.2域关系演算的定义及表达式的含义(领会)

4.2.3关系运算的安全约束和等价性(领会)

4.3关系代数表达式的优化(领会)

关系模型有三个重要组成部分:

1)数据结构

2)数据操纵

3)数据完整性规则

关系查询语言根据其理论基础的不同分成两类:

1)关系代数语言

2)关系演算语言

4.1 关系代数

1.关系代数的五个基本操作:并、差、笛卡尔积、投影和选择。

并 (∪):两个关系需有相同的关系模式,并的对象是元组,由两个关系所有元组构成。

差 (-):同样,两个关系有相同的模式,R和S的差是由属于R但不属于S的元组构成的集合。

笛卡儿积(×):对于两个关系作运算,列:(n+m)列的元组的集合,元组的前n列是关系R 的一个元组后m列是关系S的一个元组,

行:k1×k2个元组。

投影( σ):对关系进行垂直分割,消去某些列,并重新安排列的顺序。

选择 (π):根据某些条件关系作水平分割,即选择符合条件的元组。

2.关系代数的四个组合操作:交、联接、自然联接和除法

交(∩):R和S的交是由既属于R又属于S的元组构成的集合。

联接包括θ联接和F联接,是选择R×S中满足iθ(r+j)或F条件的元组构成的集合,特别注意等值联接 (θ为等号“=”)。

自然联接(R|X|S):在R×S中,选择R和S公共属性值均相等的元组,并去掉R×S中重复的公共属性列。如果两个关系没有公共属性,则自然联接就转化为笛卡尔积。

除法(÷):首先除法的结果中元数为两个元数的差,可以直接用观察法来得到结果,把S看作一个块,拿到R中去和相同属性集中的元组作比较,如果有相同的块,且除去此块后留下的相应元组均相同,那么可以得到一条元组,所有这些元组的集合就是除法的结果。

对于上述的五个基本操作和组合操作,应当从实际运算方面进行理解和运用,对其形式定义可不必深究。注意课本上的例子。

关系代数运算的三个要素:

运算对象:关系

运算结果:关系

运算符:四类

集合运算符

将关系看成元组的集合

运算是从关系的“水平”方向即行的角度来进行专门的关系运算符

不仅涉及行而且涉及列

算术比较符

辅助专门的关系运算符进行操作

逻辑运算符

辅助专门的关系运算符进行操作

广义笛卡尔积(Extended Cartesian Product)R

n目关系,k1个元组

S

m目关系,k2个元组

R×S

列:(n+m)列的元组的集合

元组的前n列是关系R的一个元组

后m列是关系S的一个元组

行:k1×k2个元组

R×S = {tr ts |tr ∈R ∧ ts∈S }

选择(Selection)

1)选择又称为限制(Restriction)

2)选择运算符的含义

在关系R中选择满足给定条件的诸元组

σF(R) = {t|t∈R∧F(t)= '真'}

F:选择条件,是一个逻辑表达式,基本形式为:

[?( ] X1θY1 [ )][φ [?( ] X2θY2 [ )]]…

θ:比较运算符(>,≥,<,≤,=或<>)

X1,Y1等:属性名、常量、简单函数;属性名也可以用它的序号来代替;

φ:逻辑运算符(∧或∨)

[ ]:表示任选项

…:表示上述格式可以重复下去

3)选择运算是从行的角度进行的运算

4)举例

设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。

[例1] 查询信息系(IS系)全体学生

σSdept = 'IS' (Student) 或σ5 ='IS' (Student)

结果:

[例2] 查询年龄小于20岁的学生

σSage < 20(Student) 或σ4 < 20(Student)

结果:

全国自考数据库系统原理历年试题及答案

2008年1月高等教育自学考试全国统一命题考试 数据库系统原理试卷 4735 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.数据库在磁盘上的基本组织形式是( B ) A.DB B.文件 C.二维表D.系统目录 2.ER(实体联系模型)模型是数据库的设计工具之一,它一般适用于建立数据库的( A ) A.概念模型B.逻辑模型 C.内部模型D.外部模型 3.数据库三级模式中,用户与数据库系统的接口是( B ) A.模式B.外模式 C.内模式D.逻辑模式 4.在文件系统中,所具有的数据独立性是( D ) A.系统独立性

B.物理独立性 C.逻辑独立性 D.设备独立性 5.在DB技术中,“脏数据”是指( D ) A.未回退的数据 B.未提交的数据 C.回退的数据 D.未提交随后又被撤消的数据 6.关系模式至少应属于( A ) A.1NF B.2NF C.3NF D.BCNF 7.设有关系模式R(ABCD),F是R上成立的FD集,F={A→B,B→C},则属性集BD的闭包(BD)+为( B ) A.BD B.BCD C.BC D.CD 8.设有关系R如题8图所示:(C)

R 则 专业,入学年份(R)的元组数为 A.2 B.3 C.4 D.5 9.集合R与S的交可以用关系代数的基本运算表 示为( A ) A.R-(R-S) B.R+(R-S) C.R-(S-R) D.S-(R-S) l0.已知SN是一个字符型字段,下列SQL查询语 句( C ) SELECT SN FROM S WHERE SN LIKE′AB%′;的执行结果为 A.找出含有3个字符′AB%′的所有SN字段 B.找出仅含3个字符且前两个字符为′AB′的SN字段 C.找出以字符′AB′开头的所有SN字段

数据库系统原理及应用教程第四版课后答案

第一章 1、(1)数据:数据用于载荷信息的物理符号。 (2)数据的特征;○1数据有“型”与“值”之分;○2数据受数据类型与取值范围的约束;○3数据有定性表示与定量之分;○4数据应具有载体与多种表现形式。 3、(1)数据管理的功能: ○1组织与保存数据功能,即将收集到的数据合理地分类组织,将其存储在物理载体上,使数据能够长期的被保存; ○2数据维护功能,即根据需要随时进行插入新数据,修改原数据与删除失效数据的操作; ○3数据查询与数据统计功能,即快速的得到需要的正确数据,满足各种使用要求;○4数据的安全与完整性控制功能,即能保护数据的安全与完整性。 (2)数据管理的目标:收集完整的信息,将信息用数据表示,按数据结构合理科学的组织并保存数据;为各种使用快速地提供需要的数据,并保护数据的安全与完整性。 4、(1)数据库:就是数据管理的新方法与技术,她就是一个按数据结构来存储与管理数据的计算机软件系统。 (2)数据库中的数据具有的特点:○1数据库中的数据具有整体性,即数据库中的数据要保持自身完整的数据结构;○2数据库中的数据具有数据共享性,不同的用户可以按各自的用法使用数据库中的数据,多个用户可以同时共享数据库中的数据资源。 5、(1)数据库管理系统:它就是专门用于管理数据库的计算机管理软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询与统计等操作功能,并完成对数据完整性、安全性进行操作的功能。 (2)数据库管理系统主要功能:就是数据存储、数据操作与数据控制功能。其数据存储与数据操作就是:数据库的定义功能,指未说明库中的数据情况而进行的建立数据库结构的操作;数据库建立功能,指大批数据录入到数据库的操作,它使得库中含有需要保护的数据记录;数据库维护功能,指对数据的插入、删除与修改操纵,其操作做能满足库中信息变化或更新的需求;数据库查询与统计功能,指通过对数据库的访问,为实际应用提供需要的数据。数据库管理系统的数据控制功能为:数据安全性控制功能,即为了保证数据库的数据安全可靠,防止不合法的使用造成数据库泄露与破坏,也就就是避免数据被人偷瞧、篡改或破坏;数据库完整性控制功能,指为了保证数据库中的数据的正确、有效与相容,防止不合语意的错误数据被输入或输出。 14、(1)数据库系统的软件由几部分组成?数据库系统的软件中包括操作系统(OS)、数据库管理系统(DBMS)、主语言系统、应用程序软件与用户数据库。 (2)作用:①操作系统或汉字操作系统:操作系统就是所有计算机软件的基础,在数据库系统中它起着支持DBMS及主语言系统工作的作用。如果管理的信息中有汉字,则需要中文操作系统的支持,以提供汉字的输入、输出方法与汉字信息的处理方法。②数据库管理系统与主语言系统:数据库管理系统就是为定义、建立、维护、使用及控制数据库而提供的有关数据管理的系统软件。主语言系统就是为应用程序提供的诸如程序控制、数据输入输出、功能函数、图形处理、计算方法等数据处理功能的系统软件。③应用开发工具软件:应用开发工具就是DBMS系统为应用开发人员与最终用户提供的高效率、多功能的应用生成器、第四代计算机语言等各种软件工具.如报表生成器、表单生成器、查询与视图设计器等,它们为数据库系统的开发与使用提供了良好的环境与帮助。④应用系统及数据库:数据库应用系统包括为特定的应用环境建立的数据库、开发的各类应用程序及编写的文档资料,它们就是一个有机整体。通过运行数据库应用系统,可以实现对数据库中数据的维护、查询、管理与处理操作。(3)关系:

数据库系统原理实验报告-基本操作

计算机学院 数据库系统原理实验报告 课程名称:数据库系统原理 开课学期:2015-2016学年第1学期 班级: 指导老师: 实验题目:SQLServer系统基本操作 学号: 姓名: 提交时间:第n周

一.实验目的 (一)通过实验了解大型数据库管理系统SQL SERVER2000基本架构,并且掌握验证SQL SERVER2000是否正确安装和基本的配置方法。 (二)通过实验,掌握SQL SERVER数据库与ACCESS数据库、EXCEL 表和文本文件的数据之间的导入-导出方法。 二.实验原理 大型数据库管理系统是数据库管理的基本平台。SQL SERVER2000数据存储在数据库中。在数据库中,数据被组织到用户可以看见的逻辑组件中。数据库还可以按物理方式,在磁盘上作为两个或更多的文件实现。使用数据库时使用的主要是逻辑组件,例如表、视图、过程和用户。文件的物理实现在很大程度上是透明的。一般只有数据库管理员需要处理物理实现。每个SQL Server 实例有四个系统数据库(master、model、tempdb 和msdb)以及一个或多个用户数据库。 三.实验内容和方法 (一)基本操作 1.启动和停止SQLServer服务 可以通过以下4种方法停止和启动SQLServer服务 (1)SQLServer服务管理器

(2)SQLServer企业管理器

(3)控制面板中的服务对话框

(4)NT服务器命令行 (二)数据的导入导出 1.奖SQL Server 数据库转移到access的数据库(1)启动office的access,建立一个空的数据库 (2)导出数据库

《数据库系统原理与技术》试题库试题与参考答案选编

一、选择题 1 等值连接与自然连接是 ( )。 A.相同的 B.不同的,自然连接是两表普通连接 C. 不同的,自然连接连接条件无等值要求 D.不同的,自然连接连接条件有等值要求 D 2 关系数据库管理系统应能实现的专门关系运算包括。 A.排序、索引、统计 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表 B 3 关系运算中花费时间能最长的运算是()。 A.不可再分 B.选择 C.笛卡尔积 D. 除 C 4 设有关系R,按条件f对关系R进行选择,正确的是 ( ) 。 A.R×R B.R-R

C. δf (R) D.∏f (R) C 5 欲从已知关系中按某条件取出两列,则应采取关系代数的()运算 A.选择 B.投影 C.连接 B 6 在关系代数运算中,五种基本运算为 ( ) 。 A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影 C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 C 7 自然连接是构成新的有效方法。一情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 ( )。 A.元组B.行 C.记录D.属性 D 8 从关系中挑选出指定的属性组成新关系的运算称为()。 A.“选取”运算 B. “投影”运算 C.“连接“运算 D.“交”运算

9 关系数据库管理系统应能实现的专门关系运算包括()。 A. 排序、索引、统计 B. 选择、投影、连接 C. 关联、更新、排序 D. 显示、打印、制表 B 10 逻辑表达式运算的结果是()。 A.数值型 B. 字符型 C.逻辑型 C. 日期型 C 11 设域 D1={a1,a2,a3},D2={1,2},D3={计算机打印机扫描仪}。则D1、D2 和D3 的笛卡儿积的基数为()。 A.2 B. 3 C. 8 D. 18 D 12 下列哪种运算不属于关系代数的基本运算()。 A. 连接 B. 笛卡儿积 C. 相减 D. 投影 A 13 有两个关系 R和S ,分别包含15个和10个元组,则在R ∪ S,R - S,R ∩S 中不可能出现的元组数目情况是()。 A.15,5,10 B.18,7,7 C.21,11,4 D.25,15,0

专科《数据库原理与应用》_试卷_答案

专科《数据库原理与应用》 一、(共66题,共150分) 1. 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中在( ),程序员可能需要设计数据在内存中的物理地址。(2分) A.数据库系统 B.文件系统 C.人工管理 D.数据项管理 .标准答案:C 2. 在关系模式中,如果属性A和B存在1对1的联系,则存在( ) 依赖关系。(2分) A. B. C. D.以上都不是 .标准答案:C 3. 关系模型支持( ) 的数据结构。(2分) A.线性结构 B.树结构 C.图结构 D.集合结构 .标准答案:D 4. 在数据库三级模式结构中,内模式是( ) 的视图。(2分) A.计算机世界 B.信息世界 C.现实世界终端用户 D.数据库管理员 .标准答案:A 5. 关系模型的参照完整性要求( ) 。(2分) A.一个关系必须有外码 B.外码必须是父关系的主属性 C.外码所在的关系即子关系必须和父关系是不同关系 D.外码或为空或为父关系对应主码的值 .标准答案:B 6. SQL语言中的DELETE命令属于( ) 。(2分) A.数据定义语言 B.数据操作语言 C.数据控制语言 D.数据查询语言 .标准答案:B 7. ( ) 是数据库系统概论的直接先导课程之一。(2分) A.大学物理 B.汇编语言 C.数据结构 D.模拟电路 .标准答案:C 8. 数据库管理系统简称DBMS,下列系统软件中,( ) 是具有DBMS功能的软件。(2分) A.Microsoft Office Word B.Microsoft Office PowerPoint C.Microsoft Office Outlook D.Microsoft Office Access .标准答案:D 9. SQL语言的数据查询语言SELECT命令语法接近自然语言,下列子句中( ) 是SELECT命令语法规定必须有的部分。(2分) A.FROM子句 B.GROUP BY子句 C.ORDER BY子句 D.INTO子句 .标准答案:A 10. 下面术语中( ) 是数据库系统原理与应用课程的关键词。(2分) A.数据模型 B.编程语言 C.软件体系结构 D.数据转换 .标准答案:A 11. 因为关系数据库的查询优化技术,用户程序员不用了解数据库中数据的物理存储结构,也能编写高效率的程序。(2分) ( ) .标准答案:正确 12. 关系操作中的投影运算必须有两个关系同时参与运算才能得到正确的结果。(2分) ( ) .标准答案:错误 13. DBTG中的系是一棵二级树,表示的是系主记录型(Owner)和成员记录型(member)之间一对多的关系,但两个记录之间可以定义多个系。(2分) ( ) .标准答案:正确 14. DBMS作为一种大型的系统软件,可以通过相关技术绕过操作系统,直接管理存储在硬盘上的数据。(2分) ( ) .标准答案:错误 15. 数据模型的是三要素指,数据结构、数据操作和完整性约束条件。其中数据结构是描述系统的静态特性的,数据操作是描述系统动态特性的。(2分) ( ) .标准答案:正确 16. 在数据库中,数据独立性是指数据之间相互独立,互不依赖。(2分) ( ) .标准答案:错误 17. SQL语言的视图对应三级模式的外模式,表对应模式,所以用户程序只能使用视图而不能直接使用表来查询和操作数据库中的数据。(2分) ( )

2018年10月自考04735数据库系统原理试卷及答案(汇编)

2018年10月高等教育自学考试全国统一命题考试 数据库系统原理试卷 (课程代码04735) 第一部分选择题 一、单项选择题:本大题共l5小题,每小题2分,共30分。在每小题列出的备选项中 只有一项是最符合题目要求的,请将其选出。 1.描述事物的符号记录是 A.Data B.DB C.DBMS D.DBS 2.不属于人工管理阶段特点的是 A.数据共享 B.数据不保存 C.应用程序管理数据 D.数据面向应用 3.关系表中的列,也称作 A.元组 B.记录 C.字段 D.数组 4.关系中包含在任何一个候选码中的属性称为 A.非主属性 B.主属性 C.非码属性 D.超属性 5.关于参照关系和被参照关系叙述正确的是 A.以外码相关联的两个关系,以外码作为主码的关系称为参照关系 B. 以外码相关联的两个关系,外码所在的关系称为被参照关系 C.参照关系也称为主关系,被参照关系也称为从关系 D.参照关系也称为从关系,被参照关系也称为主关系 6.将相关数据集中存放的物理存储技术是 A.非聚集 B.聚集 C.授权 D.回收 7.颁布SQL3的年份是 A.1986年 B.1987年 C.1989年 D.1999年 8.可用于收回权限的SQL语句是 A.GRANT B.ROLL C.REVOKE D.RETURN 9.在MySQL中,用于实现交叉连接的关键字是 A.CROSS JOIN B.INNER JOIN C.JOIN D.LEFT JOIN 、 10.对于使用存储过程的好处说法错误的是 A.可增强SQL语言的功能’ B.可增强SQL语言的灵活性 C.具有良好的封装性 D.系统运行稳定 11.可以独立地删除完整性约束,而不会删除表的语句是 A.ALTERTABLE B.DROPTABLE C.CHECK TABLE D.DELEALTER 12.在触发器的创建中,每个表每个事件每次只允许一个触发器,因此每个表最多支持的触发器是

(完整word版)数据库系统原理及应用教程第四版课后答案

第一章 1、(1)数据:数据用于载荷信息的物理符号。 (2)数据的特征;○1数据有“型”和“值”之分;○2数据受数据类型和取值范围的约束;○3数据有定性表示和定量之分;○4数据应具有载体和多种表现形式。 3、(1)数据管理的功能:○1组织和保存数据功能,即将收集到的数据合理地分类组织,将其存储在物理载体上,使数据能够长期的被保存;○2数据维护功能,即根据需要随时进行插入新数据,修改原数据和删除失效数据的操作;○3数据查询和数据统计功能,即快速的得到需要的正确数据,满足各种使用要求;○4数据的安全和完整性控制功能,即能保护数据的安全和完整性。 (2)数据管理的目标:收集完整的信息,将信息用数据表示,按数据结构合理科学的组织并保存数据;为各种使用快速地提供需要的数据,并保护数据的安全和完整性。 4、(1)数据库:是数据管理的新方法和技术,他是一个按数据结构来存储和管理数据的计算机软件系统。 (2)数据库中的数据具有的特点:○1数据库中的数据具有整体性,即数据库中的数据要保持自身完整的数据结构;○2数据库中的数据具有数据共享性,不同的用户可以按各自的用法使用数据库中的数据,多个用户可以同时共享数据库中的数据资源。 5、(1)数据库管理系统:它是专门用于管理数据库的计算机管理软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行操作的功能。 (2)数据库管理系统主要功能:是数据存储、数据操作和数据控制功能。其数据存储和数据操作是:数据库的定义功能,指未说明库中的数据情况而进行的建立数据库结构的操作;数据库建立功能,指大批数据录入到数据库的操作,它使得库中含有需要保护的数据记录;数据库维护功能,指对数据的插入、删除和修改操纵,其操作做能满足库中信息变化或更新的需求;数据库查询和统计功能,指通过对数据库的访问,为实际应用提供需要的数据。数据库管理系统的数据控制功能为:数据安全性控制功能,即为了保证数据库的数据安全可靠,防止不合法的使用造成数据库泄露和破坏,也就是避免数据被人偷看、篡改或破坏;数据库完整性控制功能,指为了保证数据库中的数据的正确、有效和相容,防止不合语意的错误数据被输入或输出。 14、(1)数据库系统的软件由几部分组成?数据库系统的软件中包括操作系统(OS)、数据库管理系统(DBMS)、主语言系统、应用程序软件和用户数据库。 (2)作用:①操作系统或汉字操作系统:操作系统是所有计算机软件的基础,在数据库系统中它起着支持DBMS及主语言系统工作的作用。如果管理的信息中有汉字,则需要中文操作系统的支持,以提供汉字的输入、输出方法和汉字信息的处理方法。②数据库管理系统和主语言系统:数据库管理系统是为定义、建立、维护、使用及控制数据库而提供的有关数据管理的系统软件。主语言系统是为应用程序提供的诸如程序控制、数据输入输出、功能函数、图形处理、计算方法等数据处理功能的系统软件。③应用开发工具软件:应用开发工具是DBMS系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代计算机语言等各种软件工具.如报表生成器、表单生成器、查询和视图设计器等,它们为数据库系统的开发和使用提供了良好的环境和帮助。④应用系统及数据库:数据库应用系统包括为特定的应用环境建立的数据库、开发的各类应用程序及编写的文档资料,它们是一个有机整体。通过运行数据库应用系统,可以实现对数据库中数据的维护、查询、管理和处理操作。(3)关系:

自考数据库系统原理真题与答案

2006年10月份自考数据库系统原理真题 一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1. 最终用户使用的数据视图称为() A. B. 内模式外模式 C.概念模式 D.存储模式 答案:B 2.在数据库系统中,把可以相互区别的客观事物称为() A.文件 B.字段 C.实体 D.关键码 答案:C 3. 数据库的三级模式结构之间存在着两级映像,使得数据库系统具有较高的() A.事务并发性 B.数据可靠性 C.数据独立性 D.数据重用性 答案:C 4.设关系R和S的元数分别为r和s,则R×S的元数为() A.r+s B.r-s C.r×s D.MAX(r,s) 答案:A 5.设有关系R(A,B,C)和S(D,A),如下图所示,R的主键为A,S的主键为D且外键为A.则关系S中违反参照完整性约束的元组是() A.(1,2) B.(2,NULL) C.(3,3)

D.(4,4)答案:D

6. 有关系R(sno,sname,age),下列关于空值的查询语句中,不能产生正确结果的是() A.SELECTsnameFROMRWHEREage=NULL B.SELECTsnameFROMRWHEREageISNULL C.SELECTsnameFROMRWHERENOT(ageISNULL) D.SELECTsnameFROMRWHEREageISNOTNULL 答案:A 7.在数据库系统中,系统故障造成() A.硬盘数据丢失 B.软盘数据丢失 C.内存数据丢失 D.磁带数据丢失 答案:C 8.在关系模式R(A,B,C)中,F={(A,B)→C,B→C},则R最高达到() A.1NF B.2NF C.3NF D.BCNF 答案:A 9.数据库设计中,用于反映企业信息需求的是() A.ER模型 B.关系模型 C.层次模型 D.网状模型 答案:A 10.在一个ER模型中,有3个不同的实体集和3个不同的二元联系,其中有1个一对一联系、1个一对多联系和1个多对多联系,根据ER模型转换成关系模型的规则,转换成关系的数目是() A. 3

《数据库系统原理及应用》习题集及参考答案要点

《数据库系统原理及应用》习题集及参考答案 一、简答题 1、什么是数据库管理系统? 一种负责数据库的建立、操作、管理和维护的软件系统。 2、数据库系统有哪几种模式?分别用来描述什么? (1)外模式 是用户的数据视图,用来描述数据的局部逻辑结构,是模式的子集。 (2)模式 是所有用户的公共数据视图,用来描述数据库中全体数据的全局逻辑结构和特征。(3)内模式 又称存储模式,描述数据的物理结构及存储方式 3、什么是事务?事务有哪些特征? 答:所谓事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。 事务的特征:原子性、一致性、隔离性、持续性。 4、POWER BUILDER中事务对象有何作用? 答:PowerBuider的事务对象是应用程序与数据库之间进行通信的桥梁,在应用程序初启时,系统自动创一个为SQLCA(SQL Communication Area, SQL通讯区)的全局事务对象,该对象在应用程序的任何地方都可以访问 应用程序与数据库的所有通信都需要通过事务对象来完成,除了直接使用系统的缺省事务对SQLCA外,开发人员也可以创建自己的事务对象。 5、SQL SERVER中INSERTED表和DELETED表有何用? 答:触发器中用到两种特殊的表:删除表和插入表触发器中使用名为“deleted"和“inserted"来参照这些表;删除表存储受DELTE和UPDATE语句影响的行的副本当执行DELETE或UPDA TE语句时,行从触发器表中删除并传递到删除表中。删除表和触发器表通常没有共有的行。 插入表存储受INSERT和UPDA TE语句影响的行的副本当执行一NSERT或UPDA T语句时,新行同时增加到插入表和触发器表中。插入表中的行是触发器表中新行的副本可使用删除表和插入表中的行来参照相关表中的行, 或测试被删除或插入行中的值。 6、数据库系统由哪几部分构成? 答:数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 7、什么是候选码?什么是主码?主码只能有一个属性吗? 答:能唯一标识实体的属性或属性组称为超码,其任意真子集都不能成为超码的最小超码称为候选码;

福建工程学院《实验指导书(数据库系统原理及应用)》

数据库系统原理 实验指导书 (本科)

目录 实验一数据定义语言 (1) 实验二SQL Sever中的单表查询 (3) 实验三SQL Serve中的连接查询 (4) 实验四SQL Serve的数据更新、视图 (5) 实验五数据控制(完整性与安全性) (7) 实验六语法元素与流程控制 (9) 实验七存储过程与用户自定义函数 (11) 实验八触发器 (12)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\S tuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10% 2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录; (4)将年龄的数据类型改为smallint; (5)向S表添加“入学时间(comedate)”列,其数据类型为日期型(datetime); (6)对表S,按年龄降序建索引(索引名为inxage); (7)删除S表的inxage索引; (8)删除S表; 5.在StuDB数据库中, (1)按照《数据库系统概论》(第四版)P82页的学生-课程数据库创建STUDENT、COURSE 和SC三张表,每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。 并输入相关数据。 (2)将StuDB数据库分离,在D盘下创建DB文件夹下找到StuDB数据库的两个文件,进行备份,后面的实验要用到这个数据库。 6.(课外)按照《数据库系统概论》(第四版)P74页习题5的SPJ数据库。创建SPJ数据 库,并在其中创建S、P、J和SPJ四张表。每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。要作好备份以便后面的实验使用该数据库数据。 三、实验要求:

数据库系统原理教程习题答案第9章习题

第9章数据库恢复技术 1.试述事务的概念及事务的4 个特性。 答: 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。 事务具有4 个特性:原子性(Atomicity )、一致性(consistency )、隔离性( Isolation )和持续性(Durability )。这4 个特性也简称为ACID 特性。 原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。 一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。 隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。持续性:持续性也称永久性(Perfnanence ) ,指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。 2 .为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。 答: 事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。 例如某工厂的库存管理系统中,要把数量为Q 的某种零件从仓库1 移到仓库2 存放。 则可以定义一个事务T , T 包括两个操作;Ql = Ql 一Q , Q2= Q2 + Q。如果T 非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q 。 3 .数据库中为什么要有恢复子系统?它的功能是什么? 答: 因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此必须要有恢复子系统。

自考数据库系统原理完整版

自考《数据库系统原理》串讲笔记 第一章数据库基础知识 学习目的与要求: 本章属于基础知识,主要是对一些概念的理解和记忆。没有难点,相对的重点是数据模型的四个层次,数据库管理系统的功能,数据库系统的全局结构。 考核知识点与考核要求 1.1数据管理技术的发展阶段(识记) 1.2数据描述的术语(领会) 1.3数据抽象的级别(领会) 1.4数据库管理系统(DBMS) (领会) 1.5数据库系统(DBS)(领会) 1.1 数据管理技术的发展 几个数据库的基本术语: 数据:描述事物的符号记录 数据处理:是指从某些已知的数据出发,推导加工出一些新的数据,这些新的数据又表示了新的信息。 数据管理:是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。 数据管理技术:对数据的收集、整理、组织、存储、维护、检索、传送等操作,基本目的就是从大量的,杂乱无章的,难以理解的数据中筛选出有意义的数据。 数据处理是与数据管理相联系的,数据管理技术的优劣,将直接影响数据处理的效率。 1.人工管理阶段(20世纪50年代中期以前) 1)数据不保存在机器中; 2)没有专用软件对数据进行管理; 3)只有程序的概念,没有文件的概念; 4)数据面向程序。 2. 文件系统阶段特点与缺陷(20世纪50年代后期至60年代中期) 1)数据可长期保存在磁盘上; 2)数据的逻辑结构与物理结构有了区别; 3)文件组织呈现多样化; 4)数据不再属于某个特定程序,可以重复使用; 5)对数据的操作以记录为单位。 文件系统三个缺陷: 1)数据冗余性 2)数据不一致性

《数据库系统原理》实验报告

《数据库系统原理》实验 实验1 表和表数据的操作 一、实验目的 掌握在SQL Server 2000环境下,利用SQL语言创建和管理表的方法。 二、实验要求 1、学会利用SQL语句建立自定义数据类型; 2、掌握使用SQL语句建立数据表的方法; 3、掌握数据表的修改及删除方法(界面方式及语句方式); 4、掌握T-SQL中的INSERT、UPDATE及DELETE语句的使用方法; 三、实验内容 1、创建数据库 利用“查询分析器”创建“stuscore”数据库。 CREATE DATABASE stuscore 2、创建数据表 (1)用“查询分析器”建立stuscore数据库中的学生表(Student)、班级表(Class)、课程表(Course)及成绩表(Grade),结构如下: create table student (sno char(8) primary key, sname varchar(10), sex char(2), clsno char(6), stuaddr varchar(20), birthday char(20), height DEC(4,2), foreign key(clsno) references class(clsno) );

create table class (clsno char(6) primary key, clsname varchar(16), dorector varchar(10), specialty varchar(30) ); create table course (cno char(4) primary key, cname varchar(16), pcno char(4), credit tinyint ); create table grade (sno char(8), cno char(4), scorce int, primary key(sno,cno) );

《数据库系统原理与技术》试题库试题与参考答案选编4

函数依赖 一、选择题 1 下面关于函数依赖的叙述中,不正确的是()。 A.若X→Y,Y→Z,则X→YZ B.若XY→Z,则X→Z,Y→Z C.若X→Y,Y→Z,则X→Z D.若X→?Y,Y’包含Y,则X→Y’ B 2 已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A→B,E→A,CE→D}则该关系模式的候选键是()。 A. AE B.BE C. CE D. DE C 3 在关系模式中,如果属性A和B存在1对1的联系,则说()。 A.A?B B.B?A C.A??B D.以上都不是 C 4 对于关系模式中的属性x、y若x→y且x存在真子集x'→y,则() A.x完全决定y B.y完全函数依赖于x C.x部分函数依赖于y D.y部分函数依赖于x D 5 对于关系模式中的属性X.Y.Z若X→Y,但Y!→X,有Y→Z,则() A.Z传递依赖于X B.Z传递依赖于Y C.Z完全函数依赖于Y D.X传递依赖于Z A 6 如果实体X的存在依赖于Y的存在,且X主键的部分或全部从Y中获得,则X是() A.递归实体 B.复合实体 C.弱实体 D.超类实体 C 7 两个函数依赖集F和G等价的充分必要条件是() A.F=G B.F+=G C.F=G+ D.F+=G+ D 8 设有关系模式R(ABCD),F是R上成立的FD集,F={A→B,B→C},则属性集BD的闭包(BD)+为( ) A.BD B.BCD C.BC D.CD B 二、填空题

1 人们已经提出了许多种类型的数据依赖,其中最重要的是()和()。 函数依赖,多值依赖 2 如果属性X和Y 是1:1的联系,则称X和Y之间的依赖关系为 (),记作()。 相互函数依赖, X→→Y 3 在关系模式R(U)中,如果Y函数依赖于X,但Y不完全函数依赖于X,则称Y()依赖于X。 部分 4 部分函数依赖的定义是() 在关系模式R(U)中,如果Y函数依赖于X,且Y存在真子集也函数依赖于X 5 传递函数依赖的定义() 如果Y函数依赖于X,Z函数依赖于Y,X不函数依赖于Y,则说Z传递函数依赖于x 6 关系模式R有一个函数依赖X→Y,其中Y→X="假",若存在X的真子集X1使X1→Y成立,则称Y(),否则称Y()部分函数依赖于X,完全函数依赖于X 7 若F是最小函数依赖集,则其中每一个函数依赖的右部都是(单一属性)。 三、名词解释 1 部分函数依赖 部分函数依赖:如果X?Y ,但Y不是完全函数依赖于X,则称Y对X部分函数依赖。 2 传递函数依赖 传递函数依赖:对于关系模式R(U),设X、Y 和Z都是U的子集。如果X?Y,Y?Z且Y?X ,则称Z对X传递函数依赖 3 函数依赖 函数依赖:设R(U)是属性集U={A1 A2 ........An}上的关系模式,X和Y是U的子集。若对R(U)的任一具体关系r中的任意两个元组t1和t2,只要t1[X]=t2[X] 就t1[Y]=t2[Y] 。则称“X函数确定Y”或“Y函数依赖于X”,记作X?Y。 4 完全函数依赖 完全函数依赖:如果X?Y ,且对于X的任何一个真子集X’,都有 X’?Y ,则称Y对X完全函数依赖或者X完全决定Y 。 四、设有如表所示的关系,试给出其全部函数依赖及候选关键字。 表 工作证号姓名年龄地址 201 于得水24 武汉 202 田野23 北京 203 易难21 天津 204 周全23 天津 205 方元22 南京 工作证号{姓名,年龄,地址},姓名{工作证号,年龄,地址}

数据库系统原理与设计(第二版)实验一至实验三

实验一 1-1.查询员工的姓名、职务和薪水 select employeeName,headShip,salary from employee 图1-1 2.查询名字中含有“有限”的客户姓名和所在地 select CustomerName,address from Customer where CustomerName like '%有限%'

3. 查询出姓“张”并且姓名的最后一个字为“梅”的员工。 select * from employee where employeeName like '张%梅' 图1-3 4. 查询住址中含有上海或南昌的女员工,并显示其姓名、所属部门、职称、住址,其中性别用“男”和“女”显示 SELECT employeeName,department,address, isnull (convert(char(10),birthday,120),'不详')出生日期, case sex when 'M'then '男' when 'F'then'女' end as 性别 from employee where (address like '%上海%'or address like '%南昌%')and sex='F'

5. 查询出职务为“职员”或职务为“科长”的女员工的信息 select * from employee where (headship='职员' or headship='科长') and sex='F' 图1-5 6. 选取编号不在“C20050001”和“C20050004”的客户编号、客户名称、客户地址。 Select * from Customer where CustomerNo not in ( 'C20050001' ,'C20050004')

数据库系统原理与应用教程第四版课后答案

第一章 1、( 1)数据:数据用于载荷信息的物理符号。 (2)数据的特征;○1 数据有“型”和“值” 之分;○2 数据受数据类型和取值范围的约束; ○3 数据有定性表示和定量之分;○ 4 数据应具有载体和多种表现形式。 3、( 1)数据管理的功能:○ 1 组织和保存数据功能,即将收集到的数据合理地分类组织,将 其存储在物理载体上,使数据能够长期的被保存;○2数据维护功能,即根据需要随时进行插入 新数据,修改原数据和删除失效数据的操作;○3 数据查询和数据统计功能,即快速的得到需要 的正确数据,满足各种使用要求;○4 数据的安全和完整性控制功能,即能保护数据的安全和完 整性。 (2)数据管理的目标:收集完整的信息,将信息用数据表示,按数据结构合理科学的组织 并保存数据;为各种使用快速地提供需要的数据,并保护数据的安全和完整性。 4、( 1)数据库:是数据管理的新方法和技术,他是一个按数据结构来存储和管理数据的 计算机软件系统。 (2)数据库中的数据具有的特点:○ 1 数据库中的数据具有整体性,即数据库中的数据要保持自 身完整的数据结构;○2 数据库中的数据具有数据共享性,不同的用户可以按各自的用法使用数 据库中的数据,多个用户可以同时共享数据库中的数据资源。 5、( 1)数据库管理系统:它是专门用于管理数据库的计算机管理软件。数据库管理系统能 够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、 安全性进行操作的功能。 (2)数据库管理系统主要功能:是数据存储、数据操作和数据控制功能。其数据存储和数据 操作是:数据库的定义功能,指未说明库中的数据情况而进行的建立数据库结构的操作; 数据库建立功能,指大批数据录入到数据库的操作,它使得库中含有需要保护的数据记录; 数据库维护功能,指对数据的插入、删除和修改操纵,其操作做能满足库中信息变化或更新的 需求;数据库查询和统计功能,指通过对数据库的访问,为实际应用提供需要的数据。数 据库管理系统的数据控制功能为:数据安全性控制功能,即为了保证数据库的数据安全可靠, 防止不合法的使用造成数据库泄露和破坏,也就是避免数据被人偷看、篡改或破坏;数据库完整性控制功能,指为了保证数据库中的数据的正确、有效和相容,防止不合语意的错误数 据被输入或输出。 14、( 1)数据库系统的软件由几部分组成?数据库系统的软件中包括操作系统(OS)、数据库管理系统( DBMS)、主语言系统、应用程序软件和用户数据库。 (2)作用:①操作系统或汉字操作系统:操作系统是所有计算机软件的基础,在数据库系 统中它起着支持 DBMS 及主语言系统工作的作用。如果管理的信息中有汉字,则需要中文操作系 统的支持,以提供汉字的输入、输出方法和汉字信息的处理方法。②数据库管理系统和 主语言系统:数据库管理系统是为定义、建立、维护、使用及控制数据库而提供的有关数据 管理的系统软件。主语言系统是为应用程序提供的诸如程序控制、数据输入输出、功能函数、 图形处理、计算方法等数据处理功能的系统软件。③应用开发工具软件:应用开发工具是 DBMS 系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代计算机 语言等各种软件工具.如报表生成器、表单生成器、查询和视图设计器等,它们为数据库系 统的开发和使用提供了良好的环境和帮助。④应用系统及数据库:数据库应用系统包括为特 定的应用环境建立的数据库、开发的各类应用程序及编写的文档资料,它们是一个有机整体。 通过运行数据库应用系统,可以实现对数据库中数据的维护、查询、管理和处理操作。( 3)关系:

自考数据库系统原理复习资料

自考数据库系统原理复习资料 1 《数据库原理及应用》复习重点第一章数据库系统基本概念要求、目标了解和掌握数据管理技术的发展阶段数据描述的术语数据抽象的四个级别数据库管理系统的功能数据库系统的组成。一、数据管理技术的发展 1 分为四个阶段人工管理阶段、文件系统阶段、数据库阶段和高级数据库阶段。 2 数据库阶段数据管理的特点 1 采用数据模型表示复杂的数据结构。2 有较高的数据独立性。 3 数据库系统为用户提供了方便的用户接口。 4 提供四方面的数据控制功能数据库的恢复、数据库的并发控制、数据的完整性、数据安全性。 5 增加了系统的灵活性。3 数据库DB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。4 数据库管理系统DBMS是位于用户与操作系统之间的一层数据管理软件它为用户或应用程序提供访问DB的方法包括DB的建立、查询、更新及各种数据控制。 5 数据库系统DBS是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统即它是采用数据库技术的计算机系统。二、数据描述1 分为三个阶段概念设计、逻辑设计和物理设计。2 概念设计中的术语 1 实体客观存在可以相互区别的事物称为实体。2 实体集性质相同的同类实体的集合。 3 属性实体有很多特性每一个特性称为属性。 4 实体标识符关键码或键能惟一标识实体的属性或属性集。以上概念均有类型和值之分。

3 逻辑设计中的术语1 字段数据项标记实体属性的命名单位称为字段或数据项。2 记录字段的有序集合。3 文件同一类记录的集合。 4 关键码能惟一标识文件中每个记录的字段或字段集。以上概念均 有类型和值之分。4 概念设计和逻辑设计中术语的对应关系概念设计逻辑设计实体—记录属性—字段数据项实体集—文件实体标识符—关键码 5 实体之间联系的元数与一个联系有关的实体集个数。常用二元联系。二元联系的类型有三种一对一联系、一对多联系、多对多联系。6 一对一联系如果实体集E1中每个实体至多和实体集E2中的一个实体有联系反2 之亦然那么实体集E1和E2的联系称为“一对一联系”记为“11”。7 一对多联系如果实体集E1中每个实体与实体集E2中任意个零个或多个实体间有联系而E2中每个实体至多和E1中一个实体有联系那么称E1对E2的联系是“一对多联系”记为“1N”。8 多对多联系如果实体集E1中每个实体可以与实体集E2中任意个零个或多个实体间有联系反之亦然那么称E1和E2的联系是“多对多联系”记为“MN”。三、数据抽象的级别1 数据模型描述数据库的结构和定义对现实世界的数据进行抽象。 2 从现实世界的信息到数据库存储的数据以及用户使用的数据是一个逐步抽象过程根据数据抽象的级别定义了四种模型概念模型、逻辑模型、外部模型和内部模型。3 概念模型表达用户需求观点的数据全局逻辑结构的模型。4 逻辑模型表达计算机实现观点的DB全局逻辑结构的模型。5 外部模型表达用户使用观点的DB局部逻辑结构的模型。6 内部模型表达DB物理结构的模型。7 数据抽象的过程、即数据库设计的过程具体步骤1 根据用户需求设计数据库的概念模型 2 根据转换规则把概念模型转换成数据库的逻辑模型3 根据用户的业务特点设计不同的外部模型给程序员使用 4 数据库实现时要 根据逻辑模型设计其内部模型。通常分为概念设计、逻辑设计2和3步和物理设计三个阶段。8 常用的概念模型是实体联系ER模型ER模型主要用ER图来表示。9 逻辑模型的分类层次模型、网状模型、关系模型等。10 层次模型用树型层次结构表示实体及实体间联系的数据模型。11 1969年美国IBM公司的IMS系统是典型的层次模型系统。12 网状模型用有向图结构表示实体及实体间联系的数据模

相关主题
文本预览
相关文档 最新文档