电子商务数据库技术课件-学习情境2关系数据库_第1页
电子商务数据库技术课件-学习情境2关系数据库_第2页
电子商务数据库技术课件-学习情境2关系数据库_第3页
电子商务数据库技术课件-学习情境2关系数据库_第4页
电子商务数据库技术课件-学习情境2关系数据库_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

任务一关系数据结构

关系模型的数据结构很单一,就是关系,它是建立在集合代数基础上的。在关系数据库中,关系模型是型,关系是值,关系模式是对关系的描述。1.基本术语(1)关系。(2)元组。(3)属性。(4)域。(5)关系模式。(6)笛卡儿积。2.关系中的键(1)主键。关系有一个重要的性质,即在任何关系中不能有两个完全相同的元组。确定了主键的值,就能唯一地确定一个元组。(2)候选键。凡是在一个关系中具有主键特性的属性或属性组,均称为候选键。(3)外键。当关系中的某个或某些属性由另一个关系的主键构成时,则该属性或属性组称为外键。3.关系的性质数据库中的关系具有下列性质:(1)任意两个元组(行)不能完全相同。(2)关系中元组(行)的次序是不重要的,可以任意交换。(3)属性(列)的次序也是不重要的,可以任意交换。(4)同一列中的分量必须来自同一个域,是同类型的数据。(5)属性必须有不同的名称,但不同的属性可以出自相同的域,即它们的分量可以取值于同一个域。(6)每一个分量必须是原子的,即是不可再分的数据项。任务二关系操作和关系数据语言1.关系操作

关系模型中常用的关系操作包括:选择、投影、连接、除、并、交、差等查询操作和增加、删除、修改操作两大部分。查询的表达能力是其中最主要的部分。2.关系数据操纵语言

关系数据操纵语言是一种高度非过程化的语言,用户不必请求DBA为其建立特殊的存取路径,存取路径的选择由DBMS的优化机制来完成,此外,用户不必求助于循环结构就可以完成数据操纵。任务三传统的集合运算

1.并、差、交运算

当并、差、交用于关系运算时,参加运算的关系必须是相容的和可并的,即它们应有相同的目n(即两个关系都有n个属性),且相应的属性值来自同一个域。

关系R和关系S的并可记作R∪S关系R减去关系S的差可记作R-S关系R和关系S的交可记作R∩S数据库系统与文件系统的关系2.广义笛卡儿积

两个分别为n目和m目的关系R和关系S的广义笛卡儿积是一个(n+m)目的关系,关系中的每一个元组的前n列是关系R中的一个元组,后m列是关系S中的一个元组。若关系R中有a1个元组,关系S中有a2个元组,则关系R和关系S的广义笛卡儿积中有a1×a2个元组。任务四专门的关系运算仅依靠传统的集合运算,还不能灵活地实现多种多样的查询操作。因此,E.F.Codd又定义了一组专门的关系运算,包括选择、投影、连接和除。1.选择选择是一种单目运算,操作对象仅有一个关系,其作用是在关系的水平方向上选取符合给定条件的子集。2.投影投影是一种单目运算,其作用为在关系的垂直方向上选取含有给定属性的子集。用文字表示为:<关系名>[<属性表>]在属性表中可以包括一至若干个属性。 3.连接连接是一种二目运算,即操作对象有两个关系,其作用是按照给定的条件把两个关系中的所有元组按一切可能的组合方式拼接起来。可以将连接看做是有选择的笛卡儿乘积,也称为

连接。4.除

除是一种二目运算,用文字表示为<关系1>÷<关系2>。

设关系R(X,Y)和关系S(Y,Z),其中X,Y,Z为属性组。关系R中的Y与关系S中的Y是对应的属性,可以有不同的属性名,但必须出自相同的域集。关系R与关系S的除运算得到一个新的关系P(X),关系P是关系R中满足下列条件的元组在X属性列上的投影:元组在X上分量值x的象集Yx包含关系S在Y关系上投影的集合。子学习情境二关系的完整性规则及关系数据库的规范化

数据完整性由完整性规则来定义,关系模型的完整性规则是对关系的某种约束条件。关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为是关系的两个不变性,应该由关系系统自动支持。

1.实体完整性对于实体完整性规则说明如下:(1)实体完整性规则是针对基本关系而言的。一个基本表通常对应于现实世界的一个实体集。例如,学生关系对应于现实世界中学生的集合。(2)现实世界中的实体是可区分的,即它们具有某种唯一性标识。(3)相应地,关系模型中以主键作为唯一性标识。(4)主键中的属性即主属性不能取空值。2.参照完整性参照完整性规则:若属性(属性组)F是关系R的外键,它与关系S的主键K相对应(关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:(1)或者取空值(F的每个属性值均为空值)。(2)或者等于S中某个元组的主键值。3.用户定义的完整性任何关系数据库系统都应该支持实体完整性和参照完整性。除此之外,不同的关系数据库系统根据其应用环境的不同往往还需要一些特殊的约束条件,用户定义的完整性就是针对某一具体关系数据库的约束条件。这是针对某一具体数据的约束条件,由应用环境决定。它反映某一具体应用所涉及的数据必须满足的语义要求。例如,某个属性必须取唯一值、某些属性值之间应满足一定的函数关系、某个属性的取值范围在0~100之间等。关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不要由应用程序承担这一功能。4.关系完整性的操作为了维护数据库中数据的完整性,在对关系数据库执行插入、删除和修改操作时,就要检查是否满足实体完整性规则、参照完整性规则及用户定义的完整性规则。任务二关系数据库的规范化

针对一个具体问题,应该如何构造一个适合于它的数据模式,即构造几个关系模式,每个关系由哪些属性组成等,这是数据库设计问题,确切地讲是关系数据库逻辑设计问题。数据库逻辑设计的一个有力工具就是关系数据库的规范化。关系数据库的规范化就是制定一系列规则,用于检验数据库逻辑设计的正确性,它可以帮助用户避免一些不完善的数据库设计而存在的问题。1.不完善的关系模式(1)数据冗余。(2)信息内容有限。(3)不一致的数据。(4)更新异常(不一致性的危险)。(5)插入异常。

(6)删除异常。

2.函数依赖(1)函数依赖的概念。(2)部分函数依赖。(3)传递函数依赖。

3.关系数据库的规范化(1)第1范式(1NF)——每个属性值都是不可再分的最小数据单位。(2)第2范式(2NF)——非主属性不部分依赖于关系的主键。(3)第3范式(3NF)——属性不依赖于关系的非主属性。(4)Boyce-Codd范式(BCNF)——所有属性都不传递依赖于关系的任何候选键。子学习情境三数据库存储技术

数据库是大量数据的有结构的综合性的集合。如何将这样一个庞大的数据集合以最优的形式组织起来存放在外存上是一个非常重要的问题。所谓“优”应包括两个方面:一是存储效率高,节省存储空间;二是存取效率高,速度快、代价小。任务一

物理存储介质

用内存作为数据库的存储介质是不合适的,因为内存的容量还不够大,数据库小则几十MB(1MB=220字节),大则以GB(1GB=230字节)乃至TB(1TB=240字节)计,全部放在内存中是困难的;内存一般属于易失性存储器,虽然加后备电池可以在掉电时不至于丢失数据,但电池也会耗尽,从长期来说,这种内存仍是易失性的,因此内存一般不能用来存储持久数据;另外,内存储器存储单位数据的成本要比辅助存储器高得多。任务二记录的存储结构

1.记录的物理表示记录的存储结构大致有以下3种:(1)定位法。(2)相对法。(3)计数法。

2.记录的分配物理块在磁盘上的分配一般有下列4种方法:(1)连续分配法。(2)链接分配法。(3)聚簇(簇集)分配法。(4)索引分配法。

3.数据压缩技术(1)消零或空格符法。数据中常常出现一串零或空格符,可用一个特殊符号和一个表示零或空格个数的数字表示。例如,bbbb可用“#4”表示(b代表空格),0000000可用“@7”表示。(2)串型代替法。对于反复出现的字符串可用一个省略符代替,在转换时,需要查串型表。任务三文件组织

1.数据库中需要存储的信息数据库中要存储4个方面的数据。数据描述。即数据外模式、模式、内模式。数据本身。数据之间的联系。存取路径。这4个方面的数据内容都要采用一定的文件组织方式组织、存储起来。

2.数据字典的组织有关数据的描述存储在数据库的数据字典中。数据字典的特点是数据量比较小(与数据本身比较)、使用频繁,因为任何数据库操作都要参照数据字典的内容。数据字典在网状、层次数据库中常常用一个特殊的文件来组织。所有关于数据的描述信息存放在一个文件中。关系数据库中数据字典的组织通常与数据本身的组织相同。数据字典按不同的内容在逻辑上组织为若干张表,在物理上就对应若干个文件而不是一个文件。由于每个文件中存放数据量不大,可简单地用顺序文件来组织。任务四网状模型

在层次模型的基础上,取消层次模型的限制,将树的结构变成图的结构,层次模型就转化成了网状模型。广义上讲,任意一个连通的基本层次联系的集合就是一个网状模型。层次模型实际上是网状模型的一个特例,网状模型是一种比层次模型更具有普遍性的结构。网状数据库系统采用网状模型作为数据的组织方式。在数据库中,把满足以下两个条件的基本层次联系集合称为网状模型:可以有一个以上的节点无双亲;至少有一个节点有多于一个的双亲。

3.数据及数据联系的组织关于数据自身的组织,DBMS可以根据数据和处理的要求自己设计文件结构,也可以从操作系统提供的文件结构中选择合适的加以实现。目前,操作系统提供的文件结构有:顺序文件、索引文件、索引顺序文件、Hash文件(杂凑文件)和B树类文件等。

4.存取路径的组织在网状和层次数据库中,存取路径是用数据之间的联系来表示的,因此已与数据结构合并固定下来。5.数据库对文件的要求有些DBMS以操作系统的文件管理系统作为其物理层的基础,但是更多的DBMS不用操作系统的文件管理系统,而是独立设计其存储结构。数据库中的文件既继承了传统文件系统的某些技术,又有与之相区别的特点。子学习情境四数据库设计的基本步骤

1.数据库设计的特点数据库设计的特征总结如下:(1)反复性。数据库设计需要反复推敲和修改才能完成。(2)试探性。

(3)分步进行。数据库设计常常由不同的人员分阶段进行。

2.数据库设计的过程

在数据库设计开始之前,首先必须选定参加设计的人员,包括系统分析人员、数据库设计人员和程序员、用户和数据库管理员。系统分析和数据库设计人员是数据库设计的核心人员,他们将自始至终参与数据库的设计,他们的水平决定了数据库系统的质量。用户和数据库管理员在数据库设计中也是非常重要的,他们主要参加需求分析和数据库的运行维护,他们的积极参与不但能加速数据库设计,而且也是决定数据库设计质量的重要因素。程序员则在系统实施阶段参与进来,分别负责代码实现和配置软件与硬件环境。

3.数据库设计过程中需要注意的问题(1)实现用户所需要的功能(2)制作能重复使用的构件。(3)使用开发管理工具。(4)指定用户组和权限。(5)提供一致的用户界面。

(6)在应用系统中加入诊断功能。任务一需求分析

1.需求分析的过程

需求分析人员既要对数据库技术有一定的了解,又要对单位的情况比较熟悉,一般由数据库技术人员和本单位的有关工作人员合作进行。需求分析的结果可以整理成需求说明,需求说明是数据库技术人员和应用单位的工作人员取得共识的基础,必须得到单位的有关管理人员的确认。2.数据流图数据流图是从“数据”和“处理”两方面表达数据处理过程的一种图形化的表示方法。在数据流图中,用圆圈表示数据处理(加工),用有向线段表示数据的流动及流动方向,即数据的来源和去向。在系统需求分析阶段,不必确定数据的具体存储方式,将来这些数据存储可能是数据库中的关系,也可能是操作系统的文件。

3.数据字典数据字典详细描述系统中的全部数据,它是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。任务二概念设计与E-R模型

1.概念模型概述概念模型应具备以下特性:有丰富的语义表达能力。易于交流和理解。易于变动。易于向各种数据模型转换。2.概念模型的表示方法概念模型是对信息世界建模,所以概念模型应该能够方便、准确地表示出上述信息世界中的常用概念。在概念模型的表示方法中,最常用的是P.P.S.Chen于1976年提出的实体-联系方法(Entity-RelationshipApproach)。该方法是数据库逻辑设计的一种简明扼要的方法,也称为E-R模型。在按具体数据模型设计数据库之前,先用实体-联系(E-R)图作为中间信息结构模型表示现实世界中的“纯粹”实体-联系,之后再将E-R图转换为各种不同的数据库管理系统所支持的数据模型。这种数据库设计方法,与通常程序设计中画框图的办法相类似。

3.采用E-R方法的概念模型设计概念模型设计可分如下3步完成:(1)设计局部概念模型。建立局部E-R图的步骤如下:1)确定局部概念模型的范围。2)定义实体。确定每个实体类型的属性和键。3)定义联系。4)确定属性。5)逐一画出所有的局部E-R图,附以相应的说明文件。(2)设计全局概念模型。建立全局E-R图的步骤如下:1)确定公共实体类型。2)合并局部E-R图。3)消除不一致因素。4)优化全局E-R图。经合并得到的全局E-R图需要进行优化。5)画出全局E-R图,附以相应的说明文件。(3)概念模型的优化与评审。一个好的全局E-R图除了能反映用户功能需求外,还应满足下列条件:实体类型个数尽可能少。实体类型所含属性尽可能少。实体类型间联系无冗余。

任务三逻辑结构设计

E-R模型可以向现有的各种数据库模型转换,对不同的数据库模型有不同的转换规则。(1)一个实体类型转换成一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。(2)一个1:1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并。(3)一个1:n联系可以转换为一个独立的关系模式,也可以与联系的任意n端实体所对应的关系模式合并。(4)一个m:n联系转换为一个关系模式。(5)3个或3个以上的实体间的多元联系转换为一个关系模式。(6)具有相同键的关系模式可以合并。2.关系数据库的逻辑结构设计过程关系数据库的逻辑结构设计过程如下:(1)从E-R图导出初始关系模式。将E-R图按规则转换成关系模式。(2)规范化处理。(3)模式评价。(4)优化模式。

(5)形成逻辑结构设计说明书。3.外模式的设计外模式的主要作用如下:(1)提供一定的逻辑数据独立性。(2)更好地适应不同用户对数据的需求。(3)有利于数据保密。任务四物理结构设计

数据库的物理设计通常分为两步:(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构。(2)对物理结构进行评价,评价的重点是时间和空间效率。对关系数据库物理设计的内容主要包括:为关系模式选择存取方法;设计关系、索引等数据库文件的物理存储结构。子学习情境五数据库的完整性

数据库的完整性是指数据的正确性和相容性。为维护数据库的完整性,DBMS必须提供一种机制来检查数据库中的数据,看其是否满足语义规定的条件。这些加在数据库数据之上的语义约束条件称为数据库完整性约束条件,它们作为模式的一部分存入数据库中。而DBMS中检查数据是否满足完整性条件的机制称为完整性检查。任务一完整性约束的类型

1.静态约束静态约束是指数据库每次确定状态时的数据对象所应满足的约束条件,它是反映数据库状态合理性的约束,这是最重要的一类完整性约束。(1)列级约束。(2)元组约束。(3)关系约束。2.动态约束动态约束是指数据库从一种状态转变为另一种状态时,新、旧值之间所应满足的约束条件,它是反映数据库状态变迁的约束。(1)列级约束。(2)元组约束。(3)关系约束。任务二完整性约束的表达与控制

1.完整性约束的表达一个完整性规则可以用一个五元组(D,O,A,C,P)来表示,其中,D(Data)是约束作用的数据对象;O(Operation)指触发完整性检查的数据库操作,即当用户发出什么操作请求时需要检查该完整性规则,是立即检查还是延迟检查;A(Assertion)是数据对象必须满足的断言或语义约束,这是规则的主体;C(Condition)指选择A作用的数据对象值的谓词;P(Procedure)指违反完整性规则时触发的过程。2.完整性约束的控制DBMS的完整性控制机制应具有3方面的功能:定义功能,提供定义完整性约束条件的机制。检查功能,检查用户发出的操作请求是否违背了完整性约束条件。如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。任务三完整性约束的实施

因为完整性约束的检验是伴随数据库更新操作进行的,对数据库的更新操作性能影响颇大。目前域完整性约束在一般DBMS中都已经实施;实体完整性约束在大部分关系DBMS中都已基本实施;引用完整性约束在部分关系DBMS中已经实施;显式完整性约束在商品化的DBMS中的实施也逐步增多。随着计算机性能的提高和约束检验方法的改善,在DBMS商品中,比较全面的完整性约束检验可望成为标准功能。子学习情境六数据库的安全性

数据库的使用已经越来越广泛,越来越深入。例如,大型企业的管理控制,国家机构的事

温馨提示

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

评论

0/150

提交评论