数据库系统概论.docx

上传人:b****6 文档编号:6026495 上传时间:2023-01-03 格式:DOCX 页数:15 大小:74.99KB
下载 相关 举报
数据库系统概论.docx_第1页
第1页 / 共15页
数据库系统概论.docx_第2页
第2页 / 共15页
数据库系统概论.docx_第3页
第3页 / 共15页
数据库系统概论.docx_第4页
第4页 / 共15页
数据库系统概论.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

数据库系统概论.docx

《数据库系统概论.docx》由会员分享,可在线阅读,更多相关《数据库系统概论.docx(15页珍藏版)》请在冰豆网上搜索。

数据库系统概论.docx

数据库系统概论

一、名词解释

数据:

描述事物的符号记录

实体:

客观存在并可相互区别的事物

属性:

实体所具有的某一特性

码:

唯一标识实体的属性集

模式:

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

外模式:

是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

内模式:

是数据物理结构和存储方式的描述,是数据在数据内部的表示方式

域:

一组具有相同数据类型的值的集合

视图:

一个或几个基本表导出的表

基本表:

实际存在的表,是实际存储数据的逻辑表示

查询表:

查询结果对应的表

视图表:

由基本表或其他视图表导出的表

数据库设计的概念:

广义的讲,是数据库及其应用系统的设计,即设计整个的数据库应用系统。

狭义的讲,是设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用系统设计的一部分。

联系:

在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体内部的联系和实体之间的联系

函数依赖:

设R(U)是属性集U上的关系模式。

X,Y是U的子集。

若对于R(U)的任意一个可能的关系r,r中不可能存在两个元祖在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或者Y函数依赖于X

实体完整性规则:

若属性A是基本关系B的主属性,则A不能取空值。

参照完整性规则:

属性F是基本关系R的外码,它与基本关系S的主码K相对应,则对于R中每个元组在F上的值必须为:

或者取空值;或者等于S中某个元组的主码值。

用户定义的完整性:

针对某一具体关系数据库的约束条件,它反映某一具体应用所设计的数据必须满足的语义要求。

主属性:

包含在任何一个候选码中的属性。

非主属性:

不包含在任何码中的属性

 

数据库的特点永久存储、有组织、可共享三个基本特点

数据库系统一般由数据库、数据库管理系统、应用系统、数据库管理员构成

数据管理技术经历了人工管理阶段、文件系统阶段、数据库系统阶段3个阶段

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

数据模型分为两类第一类是概念模型、第二类是逻辑模型和物理模型

数据模型通常由数据结构、数据操作、完整性约束三部分组成

联系的类型一对一联系、一对多联系、多对多联系

关系数据模型的操作主要包括查询、插入、删除、更新数据

从数据库管理系统角度看,数据库系统通常采用三级模式结构,这是数据库管理系统内部的系统结构

从数据库最终用户角度看,数据库系统的结构分为单用户结构、主从式结构、分布式结构、客户/服务器、浏览器/应用服务器/数据库服务器等,这是数据库系统的外部的体系结构

两层映像外模式/模式映像、模式/内模式映像

人员数据库管理员、系统分析员、数据库设计人员、应用程序员、最终用户

关系可以分为三种类型基本关系、查询表、视图表

关系数据语言关系代数语言、关系演算语言(包括元组关系演算语言、域关系演算语言)、具有关系代数和关系演算双重特点的语言

DBMS支持的两类存取控制方法自主存取控制、强制存取控制

用户标识与鉴别的常用方法用户标识、口令

审计一般可分为用户级审计、系统级审计

数据加密的两种方法替换方法、置换方法

对单属性构成的码有两种说明方法,一种是定义为列级约束条件、另一种是定义为表级约束条件

实体完整性规则检查检查主码值是否唯一,如果不唯一则拒绝插入或修改、检查主码的各个属性是否为空,只要有一个为空就拒绝插入或修改

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

数据模型的实体完整性在CREATETABEL中用PRIMARYKEY定义

只考虑函数依赖这一种数据依赖,关系模型存在的问题数据冗余太大、更新异常、插入异常、删除异常

数据库设计的特点数据库建设的基本规律,“三分技术,七分管理,十二分基础数据”是数据库设计的特点之一、结构设计和行为设计相结合,也就是说,整个设计过程中要把数据库结构设计和对数据的处理设计密切结合起来。

设计的6个阶段需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护

数据词典通常包括数据项、数据结构、数据流、数据存储、处理

概念结构设计的方法自顶向下、自底向上、逐步扩张、混合策略

三个抽象分类、聚集、概括

三个冲突属性冲突、命名冲突、结构冲突

对关系模式进行必要的分解,常用的两种分解方式是水平分解和垂直分解

数据库管理系统的存取方法有三类第一类是索引方法,目前主要是B+树索引方法;第二类是聚簇方法;第三类是HASH方法

数据库实施阶段包括两项重要的工作一项是数据的载入另一项是应用程序的编码和调试

第1章绪论

数据(Data):

数据是数据库中存储的基本对象。

描述事物的符号记录称为数据。

数据库(DataBase):

数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合,具有永久存储、有组织和可共享三个基本特点。

数据库管理系统(DBMS):

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

主要功能包括:

1、数据定义功能2、数据组织、存储和管理3、数据操作功能4、数据库的事务管理和运行管理5、数据库的建立和维护功能6、其他功能

数据库系统(DBS):

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

数据库系统的特点:

(简答)1、数据结构化2、数据的共享性高、冗余度低、易扩充3、数据独立性高4、数据由DBMS统一管理和控制

根据模型应用的不同目的,将这些模型划分为两类(它们分别属于两个不同的层次)。

第一类是概念模型,第二类是逻辑模型和物理模型,数据模型通常由数据结构、数据操作和完整性约束三部分组成。

实体:

客观存在并且相互区别的事物称为实体。

属性:

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

码(Key):

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

域(Domain):

是一组具有相同数据类型的值的集合。

实体型(EntityType):

用实体名及其属性名集合来抽象和刻画同类实体,称为实体型,

实体集(EntitySet):

同一类型实体的集合称为实体集。

例如:

全体学生就是一个实体集。

联系(Relationship):

实体内部的联系通常是指实体的各属性之间的联系;实体之间的联系通常是指不同实体之间的联系。

两个实体之间的联系可以分为三种:

1、一对一联系(1:

1)2、一对多联系(1:

n)3、多对多联系(m:

n)

数据库领域中最常用的数据模型有:

1.层次模型(格式户模型)2.网状模型(格式户模型)3.关系模型4.面向对象模型5.对象关系模型

关系数据模型的优缺点:

1.关系模型与格式模型不同,它是建立在严格的数学概念的基础上。

2.关系模型的概念单一

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

缺点:

由于存取路径对用户透明,查询效率不如格式化数据模型

关系数据模型的操作主要包括查询、插入、删除和更新数据。

从数据库管理系统角度看,数据库系统通常采用三级模式结构(外模式,模式和内模式三级构成);这是数据库管理系统内部的系统结构。

从数据库最终用户角度看,数据库系统的结构分为单用户结构、主从式结构、分布式结构、客户/服务器、浏览器/应用服务器/数据库服务器多层结构等。

这是数据库系统外部的体系结构。

为了能够在系统内部实现这3个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:

外模式/模式映像模式/内模式映像

正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

外模式:

也称模式或用户模式是数据库用户能够看见和使用的局部数据的逻辑结构和特征描述

模式:

也称逻辑模式是数据库中全体数据的逻辑结构和特征的描是所有用户的公共数据视图

内模式:

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

开发、管理和使用数据库系统的人员主要是:

数据库管理员,系统分析员和数据库设计人员、应用程序员和最终用户。

3 试述文件系统与数据库系统的区别和联系。

答:

文件系统与数据库系统的区别是:

文件系统面向某一应用程序,联机实时处理、批处理,共享性差,冗余度大,数据独立性差,记录内有结构,整体无结构,由应用程序自己控制。

数据库系统面向现实世界,联机实时处理、分布处理、批处理。

共享性高,冗余度小,具有较高的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据的安全性、完整性、并发控制和恢复能力。

文件系统与数据库系统的联系是:

文件系统与数据库系统都是计算机系统中管理数据的软件。

解析文件系统是操作系统的重要组成部分;而DBMS是独立于操作系统的软件。

但是DBMS 是在操作系统的基础上实现的;数据库中数据的组织和存储是通过操作系统中的文件系统来实现的。

E-R图

22.什么叫数据与程序的物理独立性?

什么叫数据与程序的逻辑独立性?

为什么数据库系统具有数据与程序的独立性?

答:

.数据与程序的逻辑独立性:

当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。

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

数据与程序的物理独立性:

当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。

数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

第二章关系数据库

域(Domain):

是一组具有相同数据类型的值的集合。

关系可以有三种类型:

基本关系(基本表或基表)、查询表和视图表。

基本表是实际存在的表,它是实际存储数据的逻辑表示。

查询表是查询结果对应的表。

视图表是由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。

基本关系具有以下6条性质(判断题):

1.列是同质的(Homogeneous),即每一列中的分量是同一类型的数据,来自同一个域。

2.不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名。

3.列的顺序无所谓,即列的次序可以任意交换。

4.任意两个元组的候选码不能相同。

5.行的顺序无所谓,即行的次序可以任意交换。

6.分量必须取原子值,即每一个分量都必须是不可分的数据项。

关系数据语言可以分为三类:

关系数据语言

关系代数语言

例ISBL

关系演算语言

元组关系演算语言

例APLHA、QUEL

域关系演算语言

例QBE

具有关系代数和关系演算双重特点的语言

例SQL

实体完整性(EntityIntegrity):

若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值。

参照完整性规则:

若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:

或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码。

用户定义的完整性就是针对某一具体关系数据库的约束条件。

查询学生的姓名和所在系:

πSname,Sdept(student)或π2,5(student)

5.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:

1)求供应工程J1零件的供应商号码SNO:

πSno(σSno=‘J1’(SPJ))

2)求供应工程J1零件P1的供应商号码SNO:

πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ))

3)求供应工程J1零件为红色的供应商号码SNO:

πSno(σPno=‘P1‘(σCOLOR=’红‘(P)∞SPJ))

4)求没有使用天津供应商生产的红色零件的工程号JNO:

πJno(SPJ)-πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)

5)求至少用了供应商S1所供应的全部零件的工程号JNO:

πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ))

第三章关系数据库标准语言SQL

SQL的特点:

(简答)

1、综合统一2、高度非过程化3、面向集合的操作方式4、以同一种语法结构提供多种使用方式5、语言简洁,易学易用

SQL功能

动词

数据查询

SELECT

数据定义

CREATE,DROP(终止),ALTER(修改)

数据操纵

INSERT,UPDATE,DELETE

数据控制

GRANT(授予),REVOKE(取消,撤回)

视图的作用(优点):

(简答)1视图能够简化用户的操作。

2视图使用户能够以多种角度看待同一数据。

3视图对重构数据库提供了一定程度的逻辑独立性。

4视图能够对机密数据提供安全保护。

5适当的利用视图可以清晰的表达查询。

基本表与视图的含义和区别:

用户可以用SQL对基本表和视图进行查询或其他操作,基本表和视图一样,都是关系。

基本表是本身独立存在的表,在SQL中一个关系就对应一个基本表。

一个(或多个)基本表对应一个存储文件,一个表可以带若干索引,索引也存放在存储文件中。

存储文件的逻辑结构组成了关系数据的内模式。

存储文件的物理结构是任意的,对用户是透明的。

视图是从一个或几个基本表导出的表。

它本身不独立存储在数据库中,即数据库中只存放视图的定义而不存放视图对应的数据。

这些数据仍存放在导出视图的基本表中,因此视图是一个虚表。

视图在概念上与基本表等同,用户可以在视图上再定义视图。

将一个新学生元组插入到student表中:

INSERT

INTOStudent(Sno,Sname,Ssex,Sdept,Sage)

VALUES(‘200215128’,‘陈冬’,‘男’,‘经管’,18);

视图的作用:

1.视图能够简化用户的操作

2.视图使用户能以多种角度看待同一数据

3.视图对重构数据库提供了一定程度的逻辑独立性

4.视图能够对机密数据提供安全保护

5.适当的利用视图可以更清晰的表达查询

8.所有的视图是否都可以更新?

为什么?

答:

不是。

视图是不实际存储数据的虚表,因此对视图的更新,最终要转换为对基本表的更新。

因为有些视图的更新不能惟一有意义地转换成对相应基本表的更新,所以,并不是所有的视图都是可更新的.

第四章数据库安全性

计算机系统的安全性问题可分为三大类:

技术安全类、管理安全类和政策法律类。

用户标识和鉴定的常用方法有:

用户标识(UserIdentification)口令(Password)

存取控制机制主要包括两部分:

1.定义用户权限,并将用户权限登记到数据字典中2.合法权限检查

审计一般可以分为用户级审计和系统级审计。

加密方法:

替换方法和置换方法

8.请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能:

(a)用户王明对两个表有SELECT权力。

GRANTSELECTON职工,部门

TO王明

(b)用户李勇对两个表有INSERT和DELETE权力。

GRANTINSERT,DELETEON职工,部门

TO李勇

(c)每个职工只对自己的记录有SELECT权力。

GRANTSELECTON职工

WHENUSER()=NAME

TOALL;

(d)用户刘星对职工表有SELECT权力,对工资字段具有更新权力。

GRANTSELECT,UPDATE(工资)ON职工

TO刘星

(e)用户张新具有修改这两个表的结构的权力。

GRANTALTERTABLEON职工,部门

TO张新;

(f)用户周平具有对两个表所有权力(读,插,改,删数据),并具有给其他用户授权的权力。

GRANTALLPRIVILIGESON职工,部门

TO周平

WITHGRANTOPTION;

(g)用户杨兰具有从每个部门职工中SELECT最高工资、最低工资、平均工资的权力,他不能查看每个人的工资。

CREATEVIEW部门工资AS

SELECT部门.名称,MAX(工资),MIN(工资),AVG(工资)

FROM职工,部门

WHERE职工.部门号=部门.部门号

GROUPBY职工.部门号

GRANTSELECTON部门工资

TO杨兰;

第五章数据库完整性

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

关系模型的实体完整性在CREATETABLE中用PRIMARYKEY定义。

对单属性构成的码有两种说明方法,一种是定义为列级约束条件,另一种是定义为表级约束条件。

对多个属性构成的码只有一种说明方法,即定义为表级约束条件。

参照完整性定义:

关系模型的参照完整性在CREATETABLE中用FOREIGNKEY短语定义哪些列为外码,用REFERENCES短语指明这些外码参照哪些表的主码。

6.假设有下面两个关系模式:

职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;部门(部门号,名称,经理名,电话),其中部门号为主码。

用sQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:

定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。

CREATETABLEDEPT

(DeptnoNUMBER

(2),

DeptnameVARCHAR(10),

ManagerVARCHAR(10),

PhoneNumberChar(12)

CONSTRAINTPK_SCRIMARYKEY(Deptno));

CREATETABLEEMP

(EmpnoNUMBER(4),

EnameVARCHAR(10),

AgeNUMBER

(2),

CONSTRAINTC1CHECK(Aage<=60),

JobVARCHAR(9),

SalNUMBER(7,2),

DeptnoNUMBER

(2),

CONSTRAINTFK_DEPTNO

FOREIGNKEY(Deptno)

REFFERENCESDEPT(Deptno));

第六章关系数据理论

关系,作为一张二维表,对它有一个最起码的要求:

每一个分量必须是不可分的数据项。

满足了这个条件的关系模式就属于第一范式(1NF)。

关系模式存在以下问题:

1.数据冗余太大2.更新异常(UpdateAnomalies)3.插入异常(InsertionAnomalies4.删除异常(DeletionAnomalies)

关系数据库中的关系是要满足一定要求的,满足不同程度要求的为不同范式。

满足最低要求的叫第一范式,简称1NF。

在第一范式中满足进一步要求的成为第二范式,其余以此类推。

对于各种范式之间的联系有:

5NF<4NF

2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。

学生:

学号、姓名、出生年月、系名、班号、宿舍区。

班级:

班号、专业名、系名、人数、入校年份。

系:

系名、系号、系办公地点、人数。

学会:

学会名、成立年份、办公地点、人数。

语义如下:

一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。

一个系的学生住在同一宿舍区。

每个学生可参加若干学会,每个学会有若干学生。

学生参加某学会有一个入会年份。

请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。

指出各关系模式的候选码、外部码,有没有全码存在?

解:

(1)关系模式如下:

学生:

S(Sno,Sname,Sbirth,Dept,Class,Rno)

班级:

C(Class,Pname,Dept,Cnum,Cyear)

系:

D(Dept,Dno,Office,Dnum)

学会:

M(Mname,Myear,Maddr,Mnum)

(2)每个关系模式的最小函数依赖集如下:

A、学生S(Sno,Sname,Sbirth,Dept,Class,Rno)的最小函数依赖集如下:

SnoSname,SnoSbirth,SnoClass,ClassDept,DEPTRno

传递依赖如下:

由于SnoDept,而DeptSno,DeptRno(宿舍区)

所以Sno与Rno之间存在着传递函数依赖。

由于ClassDept,DeptClass,DeptRno

所以Class与Rno之间存在着传递函数依赖。

由于SnoClass,ClassSno,ClassDept

所以Sno与Dept之间存在着传递函数依赖。

B、班级C(Class,Pname,Dept,Cnum,Cyear)的最小函数依赖集如下:

ClassPname,ClassCnum,ClassCyear,PnameDept.

由于ClassPname,PnameClass,PnameDept

所以C1ass与Dept之间存在着传递函数依赖。

C、系D(Dept,Dno,Office,Dnum)的最小函数依赖集如下:

DeptDno,DnoDept,DnoOffice,DnoDnum

根据上述函数依赖可知,Dept与Office,Dept与Dnum之间不存在传递依赖。

D、学会M(Mname,Myear,Maddr,Mnum)的最小函数依赖集如下:

MnameMyear,MnameMaddr,MnameMnum

该模式不存在传递依赖。

(3)各关系模式的候选码、外部码,全码如下:

A、学生S候选码:

Sno;外部码:

Dept、Class;无全码

B、班级C候选码:

Class;外部码:

Dept;无全码

C、系D候选码:

Dept或Dno;无外部码;无全码

D、学会M候选码:

Mname;无外部码;无全码

第七章数据库设计

数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。

广义地讲,是数据库及其应用系统的设计,即设计整个数据库系统。

狭义地讲,是设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用系统设计的一部分。

数据库设计的特点:

1)“三分技术,七分管理,十二分基础数据”

2)结构(数据)设计和行为(处理)设计相结合

数据库设计的基本步骤:

1.需求分析2.概念结构设计3.逻辑结构设计4.物理结构设计5.数据库实施6.数据库运行和维护

需求分析常用的调查方法有:

跟班作业2.开会调查3.请专人介绍4.询问5.设计调查表,请用户填写6查阅记录

数据字典包括:

1)数据项2.数据结构3数据流4.数据存储5.处理过程6.外部实体

设计概念结构通常有四类方法:

1.自顶向下2.自底向上3.逐步扩张4.混合策略

Ø数据抽象与局部视图设计

一般有三种抽象:

1、分类2、聚集3、概括

概念结构设计的第一步…………具体做法是:

1、选择局部应用2、逐一设计分E-R图

各分E-R图之间的冲突主要有三类:

属性冲突、命名冲突和结构冲突

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

当前位置:首页 > 求职职场 > 社交礼仪

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

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