数据库理论基础_第1页
数据库理论基础_第2页
数据库理论基础_第3页
数据库理论基础_第4页
数据库理论基础_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第6章 数据库理论基础,6.1 数据管理技术的发展及各阶段的特点 6.2 数据模型 6.3 关系数据库理论 6.4 数据库系统结构,6.1 数据管理技术的发展及各阶段的特点,人工管理、文件管理、数据库系统、分布式数据库、面向对象数据库,产生的时期 40年代中 - 50年代中 产生的背景 应用需求 科学计算 硬件水平 无直接存取存储设备 软件水平 没有操作系统 处理方式 批处理 特点 数据不保存 数据由应用程序管理 数据不具备独立性和共享性,人工管理阶段,产生的时期 50年代末- 60年代中 产生的背景 应用需求科学计算、信息管理 硬件水平磁盘、磁鼓 软件水平高级语言和操作系统(有文件系统) 处

2、理方式联机实时处理、批处理 特点 数据可以长期保存 数据由文件系统管理 数据独立性共享性差冗余度大容易产生数据不一致,文件管理阶段,对所有数据实行统一的、集中地、独立的管理,使数据存储独立于使用数据的程序,实现数据共享 产生的时期 20世纪60年代后期开始 产生的背景 应用背景大规模管理 硬件背景大容量磁盘 软件背景有数据库管理系统 处理方式联机实时处理,分布处理,批处理 特点 数据结构化 数据由DBMS管理和控制 数据共享性和独立性高,数据库系统管理阶段,Database Management System数据库管理系统,用户,数据库 应用程序,DBMS,数据库,数据库应用 的一般结构,6.

3、2 数据模型,数据库不仅要反映数据本身的内容,而且要反映数据之间的联系。因此必须把具体事物转换为计算机能处理的数据形式,这个转换过程就是建立模型的过程。数据库系统使用这些数据模型定义、组织和操纵数据库中的数据,根据应用目的,模型分为两个层次: 概念模型(信息模型) 独立于计算机实现的,只用来描述和组织所关心的信息结构的概念数据模型 对应于信息世界 数据模型(结构数据模型) 直接面向计算机系统的,描述数据库中数据的逻辑结构的基本数据模型 对应于数据世界,数据模型的概念,信息世界中的基本概念 (1) 实体(Entity):客观存在且相互区别的事物 (2) 实体集(Entity Set):具有相同特

4、征的实体的集合 (3) 属性(Attribute):实体所具有的特征(等同于字段) (4) 关键字(Key):唯一能标识实体的属性 (5) 域(Domain):属性的取值范围 (6) 实体型(Entity Type):用实体名及其属性名描述同一类实体,概念模型,概念模型反映实体型及其联系的结构形式 联系(Relationship):两类 实体内部的联系:各属性之间的联系 实体之间的联系:不同实体集之间的联系 建立概念模型的关键是分析实体间的相互联系 两个实体型之间的联系可分为三类: 1对1联系(1:1) 1对多联系(1:n) 多对多联系(m:n,概念模型,定义:若对于实体集A中的每一个实体,实

5、体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1,1对1联系,定义:若对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B具有一对多联系,记为1:n,1对多联系,定义:若对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m0)与之联系,则称实体集A与实体集B具有多对多联系,记为m:n,多对多联系,数据模型的三要素 数据结构(最重要) 数据操作 检索 更新(删除、插入、更改)

6、数据的完整性约束,数据模型,当前流行的基本数据模型有4类: 层次模型 (树) 网状模型 (图) 关系模型 (Relational Model) (表) 面向对象模型(对象、类、封装、继承,数据模型的分类,数据模型,最早使用的一种模型;数据结构是一棵有向树,层次模型,数据结构是一个有向图;能表示实体之间的多种复杂联系。缺点: 编写应用程序比较复杂,需熟悉数据库的逻辑结构,网状模型,数据的逻辑结构是二维表 1970年IBM首次提出,80年代以来推出的数据库管理系统几乎都支持关系模型,是最广泛的一种数据模型。 市场上典型的关系DBMS产品: DB2,ORACLE,SYBASE,SQL Server,

7、Informix等 微机型产品: Foxpro,Access等,关系模型,1)字段(field) 标记实体属性的命名单位称为字段,或数据项。 (2)记录(record) 字段的有序集合称为记录 (3)文件(file) 同一类记录的集合称为文件 (4)关键码(key) 能惟一标识文件中每个记录的字段或字段集,称为记录的关键码(简称为键,数据模型中基本术语,关系的定义 关系模型的常用术语 关系代数 关系的完整性,6.3 关系数据库理论基础,1域(Domain) 2笛卡尔积(Cartesian Product) 3关系 (Relation,关系模型是由关系数据结构、关系操作与关系完整性组成,基本概念

8、,关系的定义,域是一组具有相同数据类型的值的集合。 例如: 整数、实数、字符串、大于0且小于500的整数 “男”,“女,域(Domain,给定一组域D1,D2,Dn,则D1,D2,Dn的笛卡尔积表示为: D1D2Dn=(d1,d2, ,dn)|diDi, i=1,2, ,n 其中每一个(d1,d2, ,dn)叫作一个n元组或简称元组,元组中的每一个值di叫作一个分量 笛卡尔积可以表示为一张二维表 表中每一行即对应一个元组 表中的每一列对应一个域,笛卡尔积(Cartesian Product,D1=男人集合Man=王兵,李军,张伟D2=女人集合Woman=丁梅,吴芳D3=孩子集合Children

9、=王一,李一,李二,D1D2D3=(王兵,丁梅,王一),(王兵,丁梅,李一),(王兵,丁梅,李二),(王兵,吴芳,王一),(王兵,吴芳,李一),(王兵,吴芳,李二),(李军,丁梅,王一),(李军,丁梅,李一),(李军,丁梅,李二),(李军,吴芳,王一),(李军,吴芳,李一),(李军,吴芳,李二),(张伟,丁梅,王一),(张伟,丁梅,李一),(张伟,丁梅,李二),(张伟,吴芳,王一),(张伟,吴芳,李一),(张伟,吴芳,李二) 3X2X3 =18个元组 就是一张二维表,例如:给出三个域,该D1,D2,D3的笛卡尔积的基数=323=18,即有18个元组,这18个元组可以组成一张二维表,D1D2Dn

10、的子集叫作在域D1,D2,Dn上的关系,表示为:R(D1,D2,Dn)。其中R表示关系名,n是关系的度。 关系是笛卡尔积的有限子集,所以关系也是一张二维表。表中的每列对应一个域,表中的每行对应一个元组。由于域可以相同,为了加以区分,必须给每列起一个名字,称为属性,关系 Relation,例如针对Man、Woman、Children集合,存在这样事实:王兵与丁梅是一对夫妻,拥有子女王一;李军和吴芳是一对夫妻,拥有李一和李二两个子女,则从原笛卡尔积中可以得到一个子集R: R=(王兵,丁梅,王一),(李军,吴芳,李一),(李军,吴芳,李二) R即称为一个关系,若将该关系命名为Family,可得到二维

11、表6-3,子集R的例子,关系Family,1)关系中每一列的值都是同一类型的数据,来自同一个域。 (2)关系中不同的列可以对应同一个域,但必须给予不同的属性名。 (3)关系中任意两个元组不能完全相同。 (4)关系中元组的次序可以随意交换。 (5)关系中列的次序可以任意交换。 (6)关系中每一个分量必须是不可分的数据项,关系具有以下性质,高雪,高雪,关系模型的常用术语,关系:即二维表格。 元组:表中的一行。 属性:表中的一列,通常每列有一个列名,即属性名,例如三个属性:部门编号、部门和系主任。 主键:表中可以惟一确定一个元组的属性组,如表中部门编号,只要给定一个确定的部门编号,就可以确定该部门的

12、部门名称及电话等其它属性值。注意:主键可以是一个属性,也可能由几个属性构成。 域:属性的取值范围。例如:属性“性别”的域是“男”、“女” 关系模式:对关系的描述,其表示形式为: 关系名(属性1,属性2,属性n) 例如表的关系可描述为: 系部一览(部门编号、部门、系主任,关系模式是型;而关系是值,关系代数是由一组以关系作为运算对象的特定运算组成的。是关系数据操纵语言的一种传统表达方式,关系代数的运算对象是关系,运算结果也为关系。 (1)传统的集合运算 已知集合R、S 并(R S):同属于R、S的元组的集合 差(R-S) :属于R 而不属于S 的所有元组组成的集合 交(R S) :同时属于R、S

13、的元组组成的集合 笛卡尔积(R S):关系中的元组为每一个R中的元组与所有的S 中的元组的组合,关系的操作常用:代数方式或逻辑方式 (关系代数) (关系演算,关系代数(关系的操作,例: 已知关系R、S和T如表6-7、6-8及6-9所示, 求出RS、RS、R-S和RT,表6-7 关系R,例: 已知关系R、S和T如表6-7、6-8及6-9所示, 求出RS、RS、R-S和RT,例: 已知关系R、S和T如表6-7、6-8及6-9所示, 求出RS、RS、R-S和RT,例: 已知关系R、S和T如表6-7、6-8及6-9所示, 求出RS、RS、R-S和RT,例: 已知关系R、S和T如表6-7、6-8及6-9

14、所示, 求出RS、RS、R-S和RT,2)专门的关系运算(4种,投影 :投影可看作是对一个表的垂直分割,提供了交换列的次序和构造新的关系的方法。 选择:从关系R中选取使逻辑表达式F为真的元组,它是对关系的水平分割。 连接 :连接是从两个笛卡尔积中选取属性间满足一定条件的元组。(等值连接、自然连接) 除运算:由属于R但不属于S的所有属性组成,且P的任意元组与关系S组合后成为R中原有的一个元组,关系代数(关系的操作,关系R上的投影是从R中选择若干属性列组成新的关系,记作: A(R)= tA | tR 其中A为R中的属性列 投影可看作是对一个表的垂直分割,投影,例:已知关系S如表6-8所示,计算出A

15、,C(S,注意:关系中任意两个元组不能完全相同,因此进行投影运算后得到的关系应消去重复元组,选择是在关系R中选择满足给定条件的元组,记作: F(R)= t | t R F(t)=真 其中F表示选择条件,它是一个逻辑表达式,取逻辑值“真”或“假”。F是由比较运算符或逻辑运算符连接组成的表达式,运算对象可以是常量、变量(属性名)或简单函数,属性名也可以用其序号来代替。 选择运算实际上就是从关系R中选取使逻辑表达式F为真的元组,它是对关系的水平分割,选择,例:已知关系S如表6-8所示,计算出A=A1(S,连接是从两个关系的笛卡尔积中选取属性间满足一定条件的元组,记作: 其中A和B分别是R和S上的属性

16、组,在A和B中包含的属性数相同且可比。为比较运算符。 等值连接时, 为“=”。 自然连接是一种特殊的等值连接,要求两个关系中进行等值比较的分量必须是相同的属性组,并且在结果中去掉重复的属性列,连接,等值连接、自然连接,例:已知关系R 关系S如表6-16和表6-17所示,计算出RS,设关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y为对应的属性,可以有不同的属性名,但必须出自相同的域集。则R与S的除运算得到一个新的关系P(X),记作: RS的属性由属于R但不属于S的所有属性组成,且RS的任一元组与关系S组合后都成为R中原有的一个元组,除,例:已知关系R、S1和S2如表6

17、-19、表6-20和表6-21所示,计算出RS1及R S2,例:已知关系R、S1和S2如表6-19、表6-20和表6-21所示,计算出RS1及R S2,实体完整性 主键的属性的值不能为空值 参照完整性 是多个关系间属性引用的一种限制。保证了两个关系间的正确联系。 用户自定义完整性 根据数据库系统应用环境需要而形成的一些特殊约束条件。如预订同一班航班人数不得超过飞机定员数,关系的完整性,参照完整性例子,数据库系统的三级模式(数据抽象的三个级别) 外模式(用户模式) 数据库使用者能看见和使用的数据的局部逻辑结构和特性的描述 模式(逻辑模式)(概念模式) 数据库中全体数据的全局逻辑结构和特性的描述

18、内模式(存储模式) 数据在数据库系统中的内部表示,即数据的物理结构和存储方式的描述 数据库系统的两级映像 外模式/模式映像 模式/内模式映像,6.4 数据库系统结构,数据库系统的三级模式结构,本章习题,1、数据库管理系统是一种 。 A)采用了数据库技术的计算机系统 B)包括数据库管理人员、计算机软硬件以及数据库系统 C)位于用户与操作系统之间的一层数据管理软件 D)包括操作系统在内的数据管理软件系统 2、数据库是相关数据的集合,它不仅包括数据本身,而且包括 A)数据之间的联系 B)数据安全 C)数据控制 D)数据操纵 3、数据模型是对实际事物的数据特征进行抽象来描述事物及事物之间的关系的。数据模型主要有关系模型、层次模型和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论