第4章 数据库技术基础_第1页
第4章 数据库技术基础_第2页
第4章 数据库技术基础_第3页
第4章 数据库技术基础_第4页
第4章 数据库技术基础_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

2技术基础_2.3数据通信与计算机网络1第4章数据库技术基础——引言——

数据库技术从20世纪60年代中期产生到今天仅仅40多年的历史,但却是计算机科学技术中发展最快的领域之一,也是应用最广的技术之一。从小型单项事务处理系统到大型信息系统,从联机事务处理到联机分析处理系统,从一般企业管理到计算机辅助设计与制造,越来越多的应用领域采用数据库存储和处理数据资源。2技术基础_2.3数据通信与计算机网络2第4章数据库技术基础——学习目的——

通过本章的学习,了解数据库的基本概念,掌握数据库设计的基本方法和技巧;掌握数据组织的方法、文件系统的结构,熟悉数据模型、关系模式、数据库规范化等要领,重要掌握E—R模型。2技术基础_2.3数据通信与计算机网络3教学内容:

4.1文件组织

4.2数据库技术

4.3数据库设计第4章数据库技术基础2技术基础_2.3数据通信与计算机网络44.1文件组织

在管理信息系统中,数据的组织方式以及内在联系的表示方法直接决定着数据处理的效率。关于数据组织,我们可以从不同的角度进行理解。从层次上看,数据组织包括数据项、记录、文件、数据库四个层次;从方式上看,数据组织包括文件组织和数据库组织两种方式。2技术基础_2.3数据通信与计算机网络54.1.1数据组织的层次

如下图所示,数据组织包括四个层次:数据项、记录、文件、数据库。2技术基础_2.3数据通信与计算机网络64.1.1数据组织的层次1.数据项数据项是组成数据系统的有意义的最小基本单位。它的作用是描述一个数据处理对象的某些属性。2.记录与数据处理的某一对象有关的一切数据项构成了该对象的一条记录。记录中能惟一地标志该记录的数据项称作主键。3.文件文件是相关(同类)记录的集合。4.数据库数据库是一定方式组织起来的逻辑相关的文件的集合。2技术基础_2.3数据通信与计算机网络74.1.1数据组织的层次

例:学生数据的组织层次2技术基础_2.3数据通信与计算机网络84.1.2文件组织1.文件的概念:数据文件(简称文件)是为了某一特定的目的而形成的同类记录的集合。随着计算机在数据处理上的应用,出现了文件系统。文件系统是负责存和管理文件的软件,它利用磁盘、磁带等大容量的外存设备作为存放文件的存储器,用户可以把一批数据定义成一个文件,通过文件系统命名,实现对文件的按名存取。

2技术基础_2.3数据通信与计算机网络94.1.2文件组织2.文件的组织形式:⑴顺序文件顺序文件是指按记录进入文件的先后顺序存放、其逻辑顺序和物理顺序一致的文件。文件中的记录按主键的值递增(或递减)次序排序,形成其逻辑顺序。⑵索引文件索引文件由文件数据区和索引表构成。文件数据区即文件本身;在文件本身外建立的一张索引表,它指明逻辑记录和物理记录之间的对应关系。索引表由若干索引项组成,一般索引项由主键和该键所在记录的物理地址组成。⑶散列文件散列文件是利用散列存储方式组织的文件,亦称直接存取文件,即根据文件中关键字的特点,设计一个散列函数和处理冲突的方法,将记录散列到存储设备上。散列文件最常用的实现方法有直接地址法和相对键法。2技术基础_2.3数据通信与计算机网络104.1.3数据库组织

数据库组织是比文件组织更高级的一种数据组织方式。由于文件系统的结构只限记录内部,因而仅能适用于单项应用的场合。对于一个组织的管理信息系统而言,要求从整体上解决问题,不仅要考虑某个应用的数据结构,而且要考虑全局数据结构。为了实现整个组织数据的结构化,就要求在数据组织结构中不仅能够描述数据本身,而且要能描述数据之间的关系(这正是数据库的特点)。因而在复杂的应用中,应采用数据库来组织数据2技术基础_2.3数据通信与计算机网络114.2数据库技术

早在20世纪60年代,数据库技术作为现代信息系统基础的一门软件学科便应运而生了。现在,数据库技术已成为计算机领域中最重要的技术之一,它是软件学科中一个独立的分支。它的出现使得计算机应用渗透到工农业生产、商业、行政、教育、科学研究、工程技术和国防军事的各个部门。

2技术基础_2.3数据通信与计算机网络124.2.1数据库的由来和发展

数据库这个名词起源于20世纪50年代,当时美国为了战争的需要,把各种情报集中在一起,存入计算机,称为InformationBase或Database。1963年美国Honeywell公司的IDS(IntegratedDataStore)系统投入运行,揭开了数据库技术的序幕。1965年美国利用数据库帮助设计了阿波罗登月火箭,推动了数据库技术的产生。当时社会上产生了许多行行色色的Database或Databank,但基本上都是文件系统的扩充。1968年美国IBM公司推出了层次模型的IMS数据库系统,并于1969年形成产品;1969年,提出了COBOL语言的美国CODASYL(ConferenceonDateSystemLanguage,数据系统语言协会)组织的数据库任务组(DBTG)发表了网状数据库系统的标准文本(1971年正式通过);1970年初,IBM公司的高级研究员E.F.Codd发表论文提出了关系模型,奠定了关系数据库的理论基础。2技术基础_2.3数据通信与计算机网络134.2.1数据库的由来和发展20世纪70年代是数据库蓬勃发展的年代。网状系统和层次系统占领了市场,关系系统开始处于实验阶段,IBM公司研制出了原型关系语言SystemR。1979年关系软件(RelationalSoftware)公司推出了第一个基于SQL的商用关系数据库产品Oracle。

20世纪80年代起,关系数据库产品已相当成熟,取代了网状系统和层次系统的市场。同时关系数据库理论也日趋完善,走向更高级的阶段,有了分布式数据库系统(DistributeddatabaseSystems)等。后来,从不同的计算机应用领域提出了许多数据库的非传统应用课题,诸如多媒体数据、空间数据、时序数据、科学数据、复杂对象、知识、超文本管理等。为了适应这类应用的需要,提出了不少新的概念、新的数据模型和系统结构。经过几年的研究和实践,逐步形成了面向对象数据库系统(Object_OrientedDatabaseSystems)、主动数据库系统(ActiveDatabaseSystems)、大型知识库系统(LargeKnowledgeBaseSystems)、数据库中的知识发现(KnowledgeDiscoveryinDatabase)以及科学数据库(ScienceDatabase)等热点。2技术基础_2.3数据通信与计算机网络144.2.2数据库系统的概念

在系统地介绍数据库的基本概念之前,这里首先介绍一些数据库中最常用的术语和基本概念。1.数据数据是数据库中存储的基本对象。什么是数据呢?数据是记录客观事物的性质、状态以及相互关系的可以识别的物理符号。2.数据库数据库,顾名思义,就是存放数据的仓库。只不过这个仓库是在存储在计算机设备上,并且是按一定的格式存放的。当然,这种说法虽然形象,但并不严谨。严格地说,数据库是以一定的组织方式存储在一起的相关数据的集合。在日常工作中,常常需要把某些相关的数据放进这样的“仓库”,并根据管理的需要进行相应的处理。2技术基础_2.3数据通信与计算机网络154.2.2数据库系统的概念3.数据库管理系统数据库如何建立,又如何管理呢?这个任务是通过一个软件来完成的,这个软件就是数据库管理系统。数据库管理系统用于协助用户创建、维护和使用数据库的系统软件。数据库管理系统是应用程序与数据库的桥梁,应用程序是通过数据库管理系统来访问数据库的。常见的数据库管理系统有:Oracle、SQLServer、DB2、FoxPro等。4.数据库系统数据库系统是引进了数据库技术的计算机系统。完整的数据库系统由硬件、数据库、数据库管理系统、操作系统、应用程序、数据库管理员、用户等部分组成。一般而言,在不引起混淆的情况下,常常把数据库系统简称为数据库。2技术基础_2.3数据通信与计算机网络164.2.3数据库系统的特点1.数据结构化2.数据共享性高3.数据独立性好4.数据冗余度低5.统一的数据管理和控制:⑴数据的安全性保护⑵数据的完整性控制⑶数据库恢复⑷并发控制2技术基础_2.3数据通信与计算机网络174.2.4数据库系统的数据模型

1.数据模型的概念模型是现实世界特征的模拟和抽象。如一张地图、一组建筑设计沙盘、一架精致的航模飞机都是具体的模型。数据模型也是一种模型,它是现实世界数据特征的抽象。现有的数据库系统均是基于某种数据模型的。简单地说,数据模型就是现实世界的模拟。2.数据模型的类型为了将现实世界中的具体事物抽象为某一数据库管理系统支持的数据模型,人们常常将现实世界抽象为信息世界,然后再将信息世界转换为机器世界,这一过程可以用下图所示的过程来描述。2技术基础_2.3数据通信与计算机网络184.2.4数据库系统的数据模型数据的抽象与转换过程2技术基础_2.3数据通信与计算机网络194.2.4数据库系统的数据模型客观世界(现实世界)

信息世界

数据世界(机器)组织(事物及其联系)实体及其联系

数据库事物类(总体)

实体集

文件事物(对象,个体)

实体

记录特性(性质)

属性

数据项

三个不同世界术语对照表2技术基础_2.3数据通信与计算机网络204.3数据库设计1.数据库设计的概念数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求的过程。其中,应用环境包括数据库管理系统、操作系统和硬件环境等。2技术基础_2.3数据通信与计算机网络214.3数据库设计

2.数据库设计的步骤数据库设计方法中比较著名的是新奥尔良(NewOrleans)法。它将数据库设计分为四个阶段:需求分析、概念结构设计、逻辑结构设计和物理结构设计。⑴需求分析⑵概念结构设计⑶逻辑结构设计⑷物理结构设计2技术基础_2.2数据库技术223、概念结构设计

前面已谈到,描述概念模型的主要工具是E-R模型。利用E-R模型实现概念结构设计的方法叫做E-R方法。4.3数据库设计2技术基础_2.2数据库技术23实体(entity):

是指明客观存在并相互区别的事物。实体可以是具体对象,例如一本书、一个工厂、一种材料等。也可以是抽象的概念和联系,例如学生的一次选课、一次借书等。实体集(entityset):

具有相同性质的同类实体的集合。例如所有教师、所有选课等。属性(attribute):实体具有许多特性,每一个特性称为属性。每个属性有一个联欢会范围,即值域。例如学生的实体可由学号、姓名、性别、年龄、系别等属性组成。性别的取值范围是“男”或“女”。主键(key):惟一标识实体的属性集称为主键。例如学生实体的学号可作为学生实体的主键。4.3数据库设计2技术基础_2.2数据库技术24实体间的联系:现实世界中,事物是相互联系的。这种联系必然在信息世界中体现出来,即实体是相互关联的。两个不同实体集的实体间的联系,它有以下三种情形:

一对一联系,记为1:1。例如工厂与厂长之间,科研任务与课题组长之间都是1:1联系。

一对多联系,记为1:N。例如一个学校有若干学生,而每个学生都在一个学校学习,学校与学生之间是一对多的联系。

多对多联系,记为M:N。例如课程与学生之间,一个学生可选多门课程,而每一门课程可有多个学生选修,课程与学生之间是多对多的联系。4.3数据库设计2技术基础_2.3数据通信与计算机网络254.3数据库设计(2)E—R模型的表示方法:矩形:表示实体,框中填写实体名椭圆:表示属性,框中填写属性名菱形:表示联系,框中填写联系名无向边:连接以上三种图形2技术基础_2.3数据通信与计算机网络264.3数据库设计例1:学生与课程构成学习关系nm课程号课程名学分学生学习课程成绩姓名年龄性别学号2技术基础_2.3数据通信与计算机网络274.3数据库设计例2三个实体型之间多对多联系供应商项目零件供应pnm2技术基础_2.3数据通信与计算机网络284.3数据库设计4、逻辑结构设计

逻辑结构设计的任务,就是把概念结构设计阶段建立的E-R模型,转换成选定的数据库管理系统所支持的数据模型(层次模型、网状模型、关系模型)。由于我们现在使用的数据库管理系统大多采用关系数据模型,所以逻辑结构设计的任务也就是将E-R模型转换为关系模型。关系模型是目前最常用的一种数据模型。2技术基础_2.3数据通信与计算机网络294.3数据库设计(1).关系模型的基本概念现以学生表为例,介绍关系模型中的一些术语。学号姓名性别出生日期年龄政治面貌籍贯200201周小云女09/10/8220党员山东200202赵大伟男08/16/8220团员河北200203刘丽丽女09/20/8022团员山东200204李强男10/14/8220群众河北200205陈光男09/15/7923党员山东200206王佳男08/09/8121团员北京2技术基础_2.3数据通信与计算机网络304.3数据库设计⑴关系一个关系对应一张二维表,二维表名就是关系名,表4-2就是一个关系。⑵元组表中的一行即为一个元组。如表4-2中的(200201,周小云,女,09/10/82,20,党员,山东)就是一个元组。⑶属性表中的一列即为一个属性,给每一个属性起一个名字即属性名。如表4-2有六列,对应六个属性,属性名分别为学号、姓名、性别、出生日期、年龄、政治面貌和籍贯。2技术基础_2.3数据通信与计算机网络314.3数据库设计⑷码能够唯一标识一个元组的属性或属性集。如表4-2中的学号,可以惟一确定一个学生,也就成为本关系的码。⑸主属性与非主属性包含在任一码中的属性称主属性,否则称为非主属性。⑹关系模式对关系的描述称为关系模式,一般表示为:关系名(属性1,属性2,…,属性n)。如学生表(学号,姓名,性别,出生日期,年龄,政治面貌,籍贯)。2技术基础_2.3数据通信与计算机网络324.3数据库设计(2)E-R模型转换为关系模型的方法

E-R模型向关系模型的转换就是解决如何将实体和实体间的联系转换为关系,并确定这些关系的关系名、属性和码。这种转换一般按下面的原则进行:⑴一个实体转换为一个关系实体名就是关系名,实体的属性就是关系的属性,实体的码就是关系的码。⑵一个联系转换为一个关系联系名作为对应的关系名;联系本身的属性、联系所连接的实体的码都转换为关系的属性;关系的码根据联系的类型有所不同:2技术基础_2.3数据通信与计算机网络334.3数据库设计①1:1联系两端实体的码都可以作为关系的码;②1:n联系将n端的码作为关系的码;③m:n联系将两端实体的码的组合作为关系的码。2技术基础_2.3数据通信与计算机网络344.3数据库设计例4-5将图4-12中的三个E-R模型分别转换为关系模型2技术基础_2.3数据通信与计算机网络354.3数据库设计对于图A,转换的结果为:厂长(厂长号、姓名、年龄)(下划线表示关系的码)工厂(厂号、厂名、地点)对于图B,转换的结果为:仓库(仓库号、地点、面积)产品(货号、品名、价格)对于图C,转换的结果为:学生(学号、姓名、性别、助学金)课程(课程号、课程名、学时数)学习(学号、课程号、成绩)2技术基础_2.2数据库技术365、数据模型

数据模型是从计算机系统的观点对数据建模,主要用于数据库管理系统的实现,它主要包括层次模型、关系模型、网状模型和面向对象模型等。DB的分类是依据数据模型进行的。层次模型:用树型结构表示。A1A2AA11A12A13A21A224.3数据库设计2技术基础_2.2数据库技术37网状模型:用有向图结构表示。W1W3W2T1T2T3T4T5S2S24.3数据库设计2技术基础_2.2数据库技术38关系模型:用二维表结构表示。结算编码合同号数量金额J0012HT1008200050000J0043HT110960013000J0033GT1123230060004.3数据库设计2技术基础_2.2数据库技术39面向对象模型:用对象和类来表示实体类型和实体间联系的数据模型。数据模型的要素:数据模型一般由下列三要素组成:一组对象及其结构、一组操作和一组(关于对象与操作的)约束。姓名性别年龄姓名性别年龄系别专业姓名性别年龄班级特长类学生类中学生类大学生4.3数据库设计2技术基础_2.2数据库技术40

关系数据库是以二维表作为数据模型的数据库系统。(1)、关系模型组成关系模型由三部分组成:数据结构(即关系)、关系操作、关系的完整性。信息在机器世界中是以数据形式存储的,其数据描述需要用到以下术语:字段(field)、记录(record)、文件(file)、主键(key):4.3数据库设计6、关系数据库2技术基础_2.2数据库技术41数据描述需要用到的术语:字段(field):

标记实体属性的命名单位称为字段(数据项)。它是可以命名的最小信息单位。例如学生、姓名、性别、年龄、系别等字段。记录(record):

字段的有序集合称为记录(相当于前面提到的数据元素)。一般用一个记录描述一个实体。例如一个学生记录,由有序的字段集组成:(2003、秦阳、男、25、管理系)。

文件(file):同一类记录的汇集称为文件。文件是描述实体集的。例如所有学生记录组成了一个学生文件。

主键(key):能惟一标识文件中每个记录的字段集,称为文件的主键。例如学号可以作为学生记录的主键。4.3数据库设计2技术基础_2.2数据库技术42关系模型的三类完整性:实体完整性:若属性A是基本关系R的主关键字中的属性(即主属性),则属性A不能取空值。参照完整性:若基本关系R中含有另一个基本关系S的主关键字Ks所对应的属性组F(F称为R的外部关键字),则在关系R中的每个元组中的F上的值必须满足:a.或取空值;b.或等于S中某个元组的主关键字的值。用户定义的完整性:用户自己对数据完整性的要求。4.3数据库设计2技术基础_2.2数据库技术43(2)SQL

SQL(StructuredQueryLanguage,结构查询语言)

是一个功能强大的数据库语言。SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。SQL功能可以分成以下几组:DML(DataManipulationLanguage,数据操作语言):用于检索或者修改数据。SELECT:用于检索数据;INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据DELETE:用于从数据库中删除数据。4.3数据库设计2技术基础_2.2数据库技术44DDL(DataDefinitionLanguage,数据定义语言):用于定义数据的结构,比如创建、修改或者删除数据库;CREATETABLEDROPTABLECREATEINDEXDROPINDEXDCL(DataControlLanguage,数据控制语言):用于定义数据库用户的权限。ALTERPASSWORD4.3数据库设计2技术基础_2.2数据库技术45(3)规范化设计理论

E.F.Codd于1971年提出规范化理论。他定义了五种规范化模式(NormalFrom,简称范式)。

范式表示的是关系模式的规范化程序,也即满足某种约束条件的关系模式,根据满足的约束条件的不同来确定范式。在五种范式中,通常只用到前三种:范式条件第一范式(1NF)元组中每一个分量都必须是不可分割的数据项第二范式(2NF)不仅满足第一范式,而且所有非主属性完全依赖于其主码第三范式(3NF)不仅满足第二范式,而且它的任可一个非主属性都不传递于任何主关键字4.3数据库设计2技术基础_2.2数据库技术461NF下表不符合第一范式的关系由非1NF规范化为1NF教师代码姓名职称系电话研究课题研究课题号研究课题名1101王一丽教授管理系3324500管理信息1102刘明副教授管理系3324800金融工程1254李爱军讲师投资系3341630电子商务教师代码姓名职称系电话研究课题号研究课题名1101王一丽教授管理系3324500管理信息1102刘明副教授管理系

温馨提示

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

评论

0/150

提交评论