数据库原理及应用CH123_第1页
数据库原理及应用CH123_第2页
数据库原理及应用CH123_第3页
数据库原理及应用CH123_第4页
数据库原理及应用CH123_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

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

文档简介

西安交通大学姚普选数据库原理及应用(Access)2数据库技术概论关系数据库Access用户界面数据库设计与创建查询设计与使用窗体设计VBA程序设计

模块设计报表和数据访问页内容3数据处理技术的发展数据库系统数据及数据间的联系数据模型1章第数据库基本概念数据处理:计算机应用的一个重要方面。

数据处理涉及内容是非数值型的离散问题,只能 采用 诸如表、树和图等非数值型的数据结构来描述。数据库技术:数据处理的一种方法。起源于60年代末。 已成为MIS、OA、CAM等领域的主要工具。1.1数据库技术的发展数据处理技术经历了四个阶段:手工管理阶段:数据在程序中文件系统阶段:数据文件

数据库系统阶段:数据库分布式数据库系统阶段:网上共享数据早期(46-50年代中期)

计算机数据处理方法:程序自带数据。在引用数 据时,直接按内存单元地址或外部设备的物理位置加内存单元地址存取。……

……应用程序1数据组1应用程序n数据组n1.手工处理阶段特点:数据的物理存储结构和逻辑结 构一致,编程者自行设计数据 格式,并将数据嵌入程序中。数据与处理它的程序合为一体, 多个程序不能共享数据。一批数据在多个对其进行不同 处理的程序中重复存储。

文件系统管理下的数据文件:

若干相关的数据元素组成“记录”,若干记录构成文件。数据文件存放于外存储器上,由文件系统统一管理,通过程序来操纵数据。每个用户都可建立、维护和处理一个或几个文件。文件系统阶段:50-60年代,现在,文件(管理)系统是操作系统的一部分。2.文件系统阶段

…...…...应用程序1数据文件1应用程序n数据文件n文件系统优点:数据以文件形式保存, 与程序独立,且可多次存取。缺点:数据文件是无结构的数据集合,只能反映客观事物的 存在,不能反映各事物间的联系。数据和应用程序互相依赖,数据文件由程序生成,数 据存取由程序完成,离开所依赖的程序则失去 意义。服务与不同程序的数据文件互相独立,无法实现数据 共享。一个应用程序所对应的数据文件不能为另 一个 程序使用。数据冗余大。应用程序编制较繁烦,缺乏对数据正确性、安全性、 保密性的有效控制手段。

学校各方面的数据分散存放在几个文件系统中,各系统互相独立工作例7-1:一所大学的数据文件系统若一部门数据处理时用到的某些数据保存在另一部门的文件系统中,数据提取困难数据分散存放还会引起数据的不一致解决:将数据和使用数据的程序隔离开来,数据按统一格式组织在一起,相关程序都能操纵例:教务部门登记学生课程申请时,需了解该生是否学过先修课程,须征得保存了“成绩”文件的学籍管理部门协助,然后编程序提取数据例:人事、学术评议两部门的文件系统都包含教师数据,若一教师电话有变,人事部门修改了而学术评议部门未能进行相应修改。即为数据不一致错误问题:数据库系统阶段:60年代至今数据库是存储在一起的相关数据的集合。数据库独立于 使用它的程序;为多种应用服务;对数据库的修改、 检索 等均可按公用的可控制方式进行。特点:数据的性质由其依赖的数据模型 来决定。数据模型规范了数据库 中数据的组织形式,表示了数据 之间的联系。有层次模型、网状 模型和关系模型等。 如果依照关系模型来设计库中数 据结构,则为关系数据库。3.数据库系统阶段应用程序1数据库DBMS应用程序n…

由数据库管理系统(DBMS)来实现对数据库的定义、 管理和操作。DBMS是用户和数据的接口。目前,流行DBMS软件大多采用关系模型。常见DBMS:Oracle,IBMDB2,Informix,Sybase,FoxPro,SQLServer,Access等。数据共享性:数据库中的数据是综合和通用的。一个 用户只用部分数据,不同用户可共享,且可按不 同方 式重叠使用数据。数据冗余度小。数据一致性。具有数据完整性措施。可以采用交互式或程序方式操作。

与文件系统比较:原来各部门分管的数据统一存放在数据库中,各部门共享数据库特点:数据结构化、减少了数据冗余;对数据库的操作在同一数据库中进行,无数据不一致现象例7-2

:一所大学的数据库系统1.2数据库系统三级模式、二级映射: 外模式、概念模式、内模式;

外模式与概念模式、

概念模式与内模式映射

1.数据库系统的结构子模式(外模式):局部逻辑数 据视图,表示某用户所理解的 实体、实体的属性及其关系。内模式(物理模式):存储器中 数据的物理存储方式。概念模式(简称模式):将所有 用户的数据综合、抽象 成统 一的数据视图,是数据库的 整个逻辑描述,即数据库所 采用的数据模型。它由数据 库管理员(DBA)统一组织管 理,故又称为DBA视图。

用户级数据库(用户视图)应用程序应用程序外模式B应用程序外模式A概念模式

外/概念映射

内模式

概念/内映射

物理级数据库(系统程序员视图)概念级数据库(DBA视图)数据库系统的结构:DBMS

数据库系统的三个层次:整个数据库分为外层、概念层和内层。用户只能看到外层,外层中的子模式可有多个;而概念 层中的概念模式和内层中的物理模式都只有一个。无论哪一级模式都只是处理数据的一个框架,按这些框 架填入的数据才是数据库的内容。以子模式为框架的数据库是用户数据库;

以模式为框架的数据库是概念数据库;以物理模式为框架的数据库是物理数据库。概念数据库是对物理数据库的抽象描述,用户数据库是 概念数据库的一个子集,是一个用户要用到的数据库 中数据子集的逻辑描述。是用户与数据库之间的一个 接口

数据存取机制:用户根据子模式操纵数据库时,数据库系统通过子模 式/模式映射使用户数据库与概念数据库相联系,又通 过模式/物理模式映射与物理数据库相联系,从而使 用户实际使用物理数据库中的数据。

【映射】对应规则,指出映射双方如何进行数据转换 。数据转换由数据库管理系统来管理。三种数据库的关系:

用户数据库是概念数据库的部分抽取;

概念数据库是物理数据库的抽象表示;

物理数据库是概念数据库的具体实现。

数据库:联机存储的有序数据的集合。 数据库系统必有可少的数据源。硬件:运行数据库系统的硬件资源。 例:SQLServer7.0至少:

32位CPU;32MB内存、80MB硬盘空间。软件:包括系统软件和应用软件两大类。

系统软件:数据库系统操作平台,包括操作系统 、 DBMS、开发工具(编程语言)等。

应用软件:在系统软件支持下, 按实际需要开发的应用程序。用户:包括数据库管理员(DBA)、应用程序员和 用户(批处理用户和终端用户);2.数据库系统的组成

数据库管理系统:数据库系统核心软件。帮助用户在计 算机上建立、使用、管理和维护数据库的软件系统。数据库管理系统的功能:

数据库定义功能:数据库描述。可从用户的、概念的和 物理的三个不同层次出发定义数据库,并创建数据库。数据库操纵功能:接收、分析和执行用户对数据库提出 的各种数据操作要求(检索、插入、删除、更新等)。数据库运行控制功能:包括执行访问数据库时的安全性 、完整性检查,以及数据共享的并发控制等,目的是保 证数据库的可用性和可靠性。数据字典:对数据库的使用和操作都要通过查阅数据字典来进行。3.数据库管理系统

数据库管理系统的组成:

数据定义语言及其翻译程序:

DDL(datadescriptionlanguage):定义数据库的模式、存储模式、外模式、以及各模式间的映射,有关的约束条件等。DDL定义的称为源模式、源存储模式和源外模式,各种模式翻译程序将其翻译成相应的内部表示。数据操纵语言及其翻译程序:

DML(datamanipulationlanguage):执行对数据库的存取、检索、修改、添加等操作。DML有宿主型(嵌入高级语言中使用)和自含型两种。数据库运行控制程序:负责数据库运行过程中的控制和管理,如系统初启、文件读写与维护程序等。实用程序:包括数据初始装入、数据转储、数据库恢复等程序。

单机使用:数据库、DBMS和应用程序在一个机 器中,程序通过DBMS使用数据库。局域网上使用:实时方式:数据库存储在服务 器上,多个用户利用数据库管理系统DBMS或 专门的数据库应用程序,通过网络访问服务 器上的数据库。远程数据库:非实时方式:用户用 通信线路访问服务器上的数据库。4.数据库系统的使用应用程序1应用程序n数据库DBMS…DBMS计算机数据库…计算机计算机实时方式

本讲首页

分布式数据库系统阶段:80年代中期开始 数据库技术,以及网络和通信技术的发展,使异机、 异地间的数据共享成为现实。分布式数据库:数据库和网络、通信系统的结合体。 处理的数据分散在各结点上,每个结点的数据由本地 DBMS管理,各结点间通过网络实现数据共享;分布式数据库系统DDBMS……计算机DBMS1DB1计算机DBMSnDBn2.3数据及数据间的联系实体:可相互区别、与某一应用有关的事物。 如一个学生、一份合同、一种材料等。实体集:性质相同的同型实体的集合。如一班学生。属性:描述实体集某一方面的特性。 一个实体集常由多个属性来描述。记录:表示一个实体的一组属性 1.实体及其描述学号姓名性别出生年月入学总分班级21001张金男02-03-83673自控2121002王银女08-12-83678自控21

型值联系:事物的联系可分为两类:一类是实体集内部的联系,表现在属性之间。另一类是实体集间的联系。可分解为多个实体间的联系。最基本的是两个实体间的联系。两个实体间联系的类型:1:1

实体集A中每个实体至多只与实体集B中一个实体相联系。反之亦然。1:n

实体集A中每个实体与实体集B中多个实体相联系,而B中每个实体至多只与A中一个实体相联系。m:n

实体集A中每个实体与实体集B中多个实体相联系,反之,B中每个实体也与A中多个实体相联系。实体型之间的一对一、一对多、多对多联系也存在于两个以上实体型之间。2.数据间的联系

实体-联系数据模型,用E-R图表示。实体(型):矩形框,框内为实体名称。属性:矩形框,以线与实体连接。属性较多时也可以将实体及其属性单独列表。实体间的联系:菱形框,框内为联系的名称。用线将菱形框与实体相连,线上标注联系类型。

3.E-R数据模型

m1n课程讲授参考书教师n1学生组成班级mn学生选修课程成绩11班级管理班主任例:用E-R图表示实体及其联系。学生:学号、姓名、性别、入学分班级:班级号、所属院课程:课程号、课程名、学分教师:教工号、姓名、职称参考书:书号、书名、内容提要、价格

学生学号姓名性别入学分班级所属院班级号教师职称教工号姓名课程学分课程号课程名参考书内容提要书号书名价格实体的表示

E-R图m1n课程讲授参考书教师选修n1学生班级组成成绩mn实体间联系的表示

本讲首页学号姓名性别入学分所属院班级号教师职称教工号姓名学分课程号课程名书号书名价格m1n课程讲授n1班级组成成绩mn学生参考书内容提要选修2.4数据模型表示数据:什么实体(命名)、哪些属性(属性名)、属性排列指出数据间联系: 主要是实体间的联系1.数据模型的任务21001张金男02-03-83673自控21

学号姓名性别出生年月入学总分班级21002王银女08-12-83678自控21ABCDACBCCD四个实体集及其联系构成数据模型。三种数据模型:层次模型、网状模型、关系模型属性数据项数据类型最大长度数据化结点(记录)是实体,树枝是联系。结点间是一对多联系。特点:有且仅有一个根结点,其记录值与下属结点1:n联系。其它结点与一个父结点、多个子结点相联系。查询、访问从根结点开始,按父子关系依次访问。

2.层次数据模型(树形)电话地址校长校名室号处长处名系主任系名系号院主任院名院号室号科长科名职务姓名工号室主任室名室号职称姓名工号班主任班长编号入学分姓名学号学校行政机构的层次模型任何两个实体间可有任意的基本联系。特别是,任何实体向上可与几个实体相联系;一般地,每一联系都是一对多的联系。若为多对多的联系,常要演变成一对多的联系。

3.网状数据模型特点:

可有0个或多个结点无双亲

允许结点有多个双亲允许结点间有2种以上的联系

存取、访问须从指定点出发,按指定路径进行。学生选课的网状模型学分时数课名课号职称性别姓名工号班级性别姓名学号分数课名学号关系模型:以数学理论为基础构造的数据模型,将每个实体集看成二维表(关系)。一个关系定义一个实体集,联系也用关系表示。不同关系间联系还可通过共同属性表现。

4.关系数据模型

本讲首页典型RDBMS(关系数据库管理系统):VFP、Oracle、Sybase、DB/2、Informix、Access等。厂号厂名状态厂址S1YL20咸阳S2XQ10西安S3XT30西安零件号零件名颜色重量存放点P1螺帽红12咸阳P2螺栓绿17西安P3螺钉黑10宝鸡P4螺钉蓝14咸阳厂号零件号存量S1P1300S1P2200S1P3400S2P1300S2P2400S3P2200关系S关系P关系SP31关系关系运算SQL语言函数依赖关系规范化方法2章第数据库基本概念2.1关系的概念1.基本术语

编号姓名所属部门职务性别工资号1张金销售部经理

男B0012王银销售部副经理

女B0073李玉办公室主任

女A0054刘铜生产一厂厂长

男C0015陈铁生产二厂厂长

男D001关系属性属性属性关键字关系:二维表行:元组列:属性域:属性取值范围关键字:唯一确定一个元组笛卡尔积:给定一组域

D1,D2,…,Dn,则

D1D2

Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}

称为D1,D2,…,Dn的笛卡尔积,每个(d1,d2,…,dn)称为一个n元组,其中每个di为Di域中一个值(一个分量)。例:域D1={张金,王银,李玉},

D2={20,21,22}则笛卡尔积D1D2

=

{(张金,20),(张金,21),(张金,22),(王银,20),(王银,21),(王银,22),(李玉,20),(李玉,21),(李玉,22)}2.关系的数学定义

关系:D1D2

…Dn的子集叫做在域

D1,D2,…,Dn上的关系,用

R(D1,D2,…,Dn)

表示。其中,R为关系名,n为关系的度。取笛卡尔积的一个有意义的子集作为关系:R(D1,D2)关键字(码):若关系中某一属性组的值能惟一地标识一个元组,而其真子集不行,则称其为候选关键字。

候选关键字中各属性称为主属性。若一个关系有多个候选关键字,则选定其中一个为主关键字。简单:候选关键字只含一个属性极端:候选关键字包含所有属性组

任何一个关系都具备以下特性:

关系的每一个分量都必须是不可分的数据项;

每列都是同类型的数据,来自同一个域;

不同的列给予不同的属性名;

任意两个元组不能完全相同。行、列的次序可以任意交换。编号工程名称费用(万元)人工费设备费A01商贸大楼335.6735B10住宅10366.7123关系模型要求关系必须是规范化的,即要求关系模式必须满足一定的规范条件。规范条件中最基本的是:

关系的每一个分量都是不可分的数据项;非规范关系3.关系的性质关系代数:抽象查询语言,关系数据操纵的传统表达方式,用对关系的运算表达查询运算对象:关系运算结果:关系运算符:

集合运算符、专门的关系运算符、算术比较符、逻辑运算符二元二元按列辅助专门的关系运算按行按行运算说明不等于≠小于等于≤大于等于≥等于=小于<或∨与∧除连接投影广义笛卡尔积×交∩差-大于>比较运算符∪集合运算符并非逻辑运算符选择专门的关系运算符含义运算符1.关系代数2.2关系运算

传统的集合运算:其运算是按元组进行的。设R1和R2为两个度为n的关系且相对应的属性值取自同一个域,则可定义三种传统的集合运算:并运算:R1∪R

, 结果:度为n,元组属于R1或R2

差运算:R1-R

, 结果:度为n,元组属于R1交运算:R1∩R

, 结果:度为n,其中元组既属于R1又属于R2

专门的关系运算:选择运算:按条件从给定关系中取若干元组组成新关系,新关系是原关系子集:σF(R)例:取S(供应厂)表中指定厂址的供应厂信息:

σ厂址=“咸阳”(S)投影运算:从给定关系中选择一些属性组成新关系,新关系是原关系子集:ΠT(R)例:P表在零件名和重量两个属性上投影:

Π零件名,重量(P)连接运算:从两个关系的广义笛卡尔积中取满足条件的元组形成新关系:等连接:取两关系笛卡尔积中A、B属性值相等的元组。自然连接:A、B为相同属性组的等连接。RSABRSRSA=BA,B分别为两关系中属性组,为比较运算符

除法运算:R/S

T运算的条件:

S的属性全包含R中;

R一些属性不含在S中。T中属性由R中除去S中属性之外的全部属性组成,T中元组由R中与S在所有相同属性上等值的元组组成。关系演算:以数理逻辑中的谓词演算为基础,按谓词变元不同分为元组关系演算和域关系演算。元组关系演算:以元组变量作为谓词变元基本对象。如ALPHA语言语句:

操作语句工作空间名(表达式表):公式

例:查找零件表中重量大于15的零件名和颜色:

GETW(S.零件名,S.颜色):S.重量>15域关系演算:以域变量(元组变量的分量)作为谓词变元基本对象。2.关系演算Page412.4SQL语言SQL(StructuredQueryLanguage,结构化查询语言)

ISO命名为国际标准数据库语言提供了数据定义、数据查询、数据操纵和数据控制语句,是一种综合性的数据库语言,可独立完成数据库生命周期中的全部活动用户可直接键入SQL命令来操纵数据库,也可将其嵌入高级语言(C、Pascal、Java等)程序中使用目前流行的各种RDBMS一般都支持SQL或提供SQL接口。其影响已超出数据库领域,扩展到了其他领域

SQL对关系数据库的支持SQL视图1视图2基表1基表2基表3基表4存储文件1存储文件2外模式模式内模式从DBMS的角度看,数据库系统有一个严谨的体系结构,从而保证其功能得以实现SQL语言支持三级模式结构

说明:由基表构成关系数据库的“模式”基表是实际的表,一个基对应一个关系;一个或多个表对应一个存储文件;存储文件的逻辑结构组成关系数据库内模式;视图是从一个或多个表中导出的表,为虚表,数据库只存放其定义而数据仍在原表中视图和基表都是关系用户使用SQL语言对基表和视图进行查询、更新等各种操作Page447.2.2关系模型设计举例SCG关系

例7-4

关系规范化Page45IDStuInstAddr分析:某些属性可以惟一确定其他属性的值

关键字IDStuIDCourInstAddrNameCourNameStuGradePage46数据冗余度大:多个属性值有重复,修改时不易维护数据的一致性。删除异常:若一门课只有一个学生选,后又不选了,则应删去。整个元组,包括该门课惟有的一些信息也跟着删除了插入异常:插入一个元组时,必须给定关键字,即具备IDStu和IDCour两个属性的内容。则对于刚入学还未选课的学生的固有信息无法插入关系SCG存在的问题:原因:SCG关系中,仅属性Grade是由整个关键字确定的,其它属性对都是由关键字中的部分属性确定的

Page47解决:SCG投影分解为三个关系,

使非主码的属性都完全(函数)依赖于关键字

Page48

函数依赖情况:Page49分析:S关系仍有数据冗余、

插入异常和删除异常问题

解决:S再投影分解为两个关系

使非主码的属性都直接依赖于关键字

Page502.数据库设计__定义基本表

可视化操作Page51SQL语言的数据定义

例7-5

:创建SC表,包括学号、课程号和成绩三个属性,属性组(学号,课程号)为主键CREATETABLESC(学号 CHAR(8)NOTNULL,

课程号CHAR(6)NOTNULL,

成绩 SMALLINT,PRIMARYKEY(学号,课程号));Page52数据库设计__定义基本表_2

S表的结构

I表的结构

C表的结构Page53数据库设计__定义基本表_3

创建表与表之间的联系Page543.数据查询

例7-6:选择表中若干列⑴查询全体学生的详细记录

SELECT*FROMS;⑵查询全体学生的学号与姓名

SELECTIDStu,NameStuFROMS;⑶查询全体学生的姓名及其出生年份

SELECT姓名,Year(出生年份)FROMS;Page55SQL查询语句例_2

例7-8:选择表中若干元组⑴查询信息51班学生的情况

SELECT*FROMSWHERE班级='信息51';⑵查询信息51班选修了课程的女生的学号

SELECTDISTINCT学号

FROMSCWHERE班级='信息51'AND性别='女';其中,DISTINCT限定学号相同的记录只显示一个,AND是逻辑与运算符Page56SQL查询语句例_3

⑶查询年龄在20~23岁之间的学生的姓名、班级和年龄

SELECT姓名,班级,年龄

FROMSWHERE年龄BETWEEN20AND23;⑷查询选修050012号课程的学生的学号和成绩,查询结果按成绩降序排列

SELECT学号,成绩

FROMSCWHERE课程号='050012'ORDERBY成绩DESC;2.4函数依赖1.数据依赖对关系模式的影响

数据依赖:通过一个关系的属性之间值的相等与否体现出来的数据之间的相互关系。有多种类型,最重要的是函数依赖和多值依赖。函数依赖:一个或一组属性值可以决定其他属性值。设X、Y为关系模式R(A1,A2,…,An)的两个属性组。若R中不存在这样两个元组:它们在X上的属性值相同,而在Y上的属性值不同,则称X函数决定Y或Y函数依赖于X,记为R:X→Y。若Y不函数依赖于X,则记作:X→Y。

非平凡函数依赖:在关系模式R(A1,A2,…,An)中,若X→Y,但YX,则称X→Y为非平凡函数依赖。若YX,则称X→Y为平凡函数依赖。 对于任一关系模式,平凡函数依赖总是成立的,它不反映新的语义。因此,只讨论非平凡函数依赖。完全函数依赖:在关系模式R(A1,A2,…,An)中,若X→Y,且对X的任一真子集X′,都有X′→Y,则称Y完全函数依赖于X。若X→Y,但Y不完全函数依赖于X,则称Y部分函数依赖于X。传递函数依赖:在关系模式R(A1,A2,…,An)中,若X→Y,Y→Z,且YX,ZY,Y→X,则称Z传递函数依赖于X。关键字:候选关键字能惟一标识关系的元组。主关键字和外关键字提供了表示关系间联系的手段。

IDStuInstAddr关键字IDStuIDCourInstAddrNameCourNameStuGrade2.函数依赖的例子SIC关系

关系SIC存在的问题:数据冗余度大:多个属性值有重复,修改时不易维护数据的一致性。删除异常:若一门课只有一个学生选,后又不选了,则应删去。整个元组,包括该门课惟有的一些信息也跟着删除了。插入异常:插入一个元组时,必须给定关键字,即具备IDStu和IDCour两个属性的内容。则对于刚入学还未选课的学生的固有信息无法插入。在该关系中,只有属性Grade对主关键字是完全函数依赖,其它属性对主关键字只是部分函数依赖。这就是产生问题的原因。

本讲首页3.函数依赖对关系的影响2.5关系规范化1.范式

范式:符合某种级别的关系模式的集合。关系数据库中的关系须满足一定要求,满足不同程度要求的为不同范式。满足最低要求的为第一范式(1NF),其上为第二范式(2NF),……。关系模式R为第n范式记为

R∈nNF非规范化关系1NF2NF3NFBCNF4NF5NF非主属性函数依赖于码非主属性完全函数依赖于码非主属性既不部分也不传递依赖于码所有属性既不部分也不传递依赖于码,所有决定属性都包含码

第一范式(1NF):若一个关系满足:每一属性值都必须是不能再分的元素,则为规范化关系,称为第一范式,简记为1NF第二范式(2NF):若一个关系属于1NF,且非主属性都完全函数依赖于关键字,则R属于2NFSIC投影分解为三个关系2.各级范式

第三范式(3NF):每个非主属性不部分依赖于关键字,也不传递依赖于关键字的关系。如,SI关系的IDStu、Inst、Addr属性之间存在传递函数依赖。也会产生数据冗余和删除、插入异常。GradeIDStuIDCourSCIDStuInstNameStuAddrSICIDCourNameCourSI投影分解的两个关系

BC范式(BCNF):对于关系R的每个函数依赖X→Y,若YX,则X必含有候选关键字,则R∈BCNF。即,每个决定属性集都包含候选关键字。BCNF的关系模式的性质:非主属性都完全函数依赖于每个候选关键字非主属性都完全函数依赖于每个不含它的候选关键字无任何属性完全函数依赖于非关键字的任何一组属性GradeIDCourNameStuGradeIDCourNameStuIDStu非BC范式,需投影分解IDStu

本讲首页

关系规范化的目的:解决关系模式中存在的插入、删除异常,修改复杂,数据冗余问题,基本思想:围绕函数依赖的主线,对一个关系模式进行分解,使关系从较低级范式变换到较高级范式。

消除非主属性对码的部分函数依赖分离关系模式,逐步消除不合适的函数依赖1NF2NF3NFBCNF消除主属性对码的部分和传递函数依赖消除非主属性对码的传递函数依赖可并为一步:消除决定属性不是候选码的任何函数依赖3.关系规范化过程

设有汽车关系:汽车(车号,车名,功率,部件(部件号,部件名,型号,重量,用量))S1:消除复合关系,规范到1NF二关系中各属性都不可再分,故为规范关系;汽车关系中存在部分函数依赖,故汽车1NF;部件关系中无部分函数依赖,但存在传递函数依赖,故部件2NF。4.关系规范化实例

S2:消除汽车关系的部分函数依赖,规范到2NF二关系无部分函数依赖和传递函数依赖,均属3NF。S3:消除部件关系的传递函数依赖,规范到3NF二关系无部分函数依赖和传递函数依赖,均属3NF。

在关系规范化的分解过程中,不仅要着眼于提高关系的范式等级,而且还要注意两条原则:无损分解原则在关系分解过程中既不能丢失、也不能增加数据。同时还要保持原有的函数依赖。相互独立原则分解后的新关系之间相互独立,对一个关系内容的修改不应影响到另一个关系。还应注意到,并非范式等级越高,分解得越细越好。例如,若分解得过于烦碎,则在检索操作时会因连接而降低检索效率。

本讲首页5.关系规范化原则69Access的特点Access数据库内部结构Access用户界面数据库对象的创建数据的导入和导出数据库安全3章第Access开发环境

Access:桌面型、面向应用的关系数据库管理系统。MicrosoftOffice套件之一。Access数据库由许多独立的对象组成,对象要独立创建。Access数据库也可以做得很大,作为在主机和其他网络数据库上存储数据的访问前端。3.1Access功能与特点

存储文件单一:一个Access数据库对应一个.MDB文件。包含数据表、查询及其他对象。可处理多种数据信息:如文本文件以及其它数据库系统的数据库文件。1.Access数据库的优点提供编程语言VBA(VisualBasicforApplications),以及全面开放的对象类型库,可创建高性能的桌面信息管理系统。具有网络功能:可通过Internet网发布。

组织数据:Access表对象用于组织数据,可将各种类型的数据放在一个表中,可定义各个表之间的关系。从而将整个数据库中的数据有机地联系在一起。建立查询:通过创建查询可查找符合指定条件的数据、更新或删除记录,或对数据执行各种计算。设计窗体:可创建窗体来直接查看、输入和更改表中的数据。窗体在DBS中的应用可提高数据操作的安全性、丰富用户操作界面。2.Access的功能输出报表:报表可用来分析数据或打印数据。共享数据:Access提供了与其他应用程序的接口,即数据的导入和导出。可将其他系统的数据库数据导入Access数据库中,也可将Access数据库的数据导出到其他系统的数据库中。支持超级链接:可将一个字段的数据类型定义成超级链接,并将Internet网络或局域网中的某个对象赋予它,当用户在数据表或窗体中双击超级链接字段时就可以启动浏览器,并转向该链接所指向的对象。建立应用系统:Access2000提供了宏和VBA,可用于将各种数据库和对象连接起来,形成一个数据库应用系统。还提供了“切换面板管理器”,可将已经建立的各种数据库对象连接起来,形成应用系统。

本讲首页

3.2Access数据库内部结构

Access数据库由表、查询、窗体、报表、宏和模块等对象组成,Access2000增加了新对象:数据访问页。查询表报表窗体宏/模块控制流数据流Access各种对象的关系:表是数据库的核心与基础,存放全部数据;报表、查询和窗体都从表中获得数据,以实现用户特定的需要,如查找、计算统计、打印、编辑等;窗体可提供良好的用户界面,可用来直接或间接地调用宏或模块,并执行查询、打印、预览、计算等功能,也可修改数据表。表:Access数据库最主要的组成部分。一个表对象是由行、列数据组成的一张二维表格。数据都存储在表中 查询、窗体和报表等对象最终的数据来源都是表,它们是操纵表中数据的不同形式每个表都有一列或几列作为关键字、惟一地标识记录

1.表表内可定义索引,以便快速查询。一个数据库文件可包含多个表,可建立表间的关联。表中可进行查找、替换、排序、筛选等各种操作。字段的数据类型可以是文本、数字、日期、货币、OLE对象(声音、图像),以及超级链接等。

查询:按规则建立的动态数据集合。查询可按预先设定的规则有选择地显示一个或多个表中的数据。在运行查询对象时,Access自动动态地建立规则所选中的表中的数据集合,再进行相应的操作。

2.查询窗体对象:提供用户与Access数据库之间的交互界面窗体主要功能:编辑数据、接受数据、显示信息和控制应用程序的流程等,窗体显示的内容可来自表或查询3.窗体

子窗体报表:以特定格式打印或显示数据的方法报表可基于某一数据表,也可基于某一查询结果。利用报表设计器设计报表。4.报表

子报表计算字段宏对象:一个或多个操作的集合,其中每个操作实现一个特定的功能。使用宏可以使一些操作任务自动完成5.宏模块对象:将VisualBasicForApplication中声明和过程作为一个单元进行保存的集合。模块对象由声明节、语句和过程组成6.模块Access2000的新功能,可直接建立Web页。通过它,可将所有文件作为Web发布程序存储到指定的文件夹,或将其复制到Web服务器上,在网上发布信息7.数据访问页

本讲首页3.3Access用户界面

主窗口数据库窗口当前对象设计工具条当前页对象列表动

菜单栏工具条状态栏数据库窗口设置:“工具”|“自定义”→自定义对话框|

温馨提示

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

评论

0/150

提交评论