文档视界 最新最全的文档下载
当前位置:文档视界 › 数据模型和数据库设计

数据模型和数据库设计

数据模型和数据库设计
数据模型和数据库设计

数据库技术是一门综合性的软件技术,是使用计算机进行各种信息管理的必备知识。

数据模型

1. 数据处理的抽象描述

不同的领域,数据的描述也有所不同。实际生活中,有对现实世界的描述;理论研究中,有对符号化数据的描述;而在计算机内部,数据又有其特定的表示方法。人们研究和处理数据的过程中,常常把数据的转换分为三个领域――现实世界,信息世界,机器世界,这三个世界间的转换过程,就是将客观现实的信息反映到计算机数据库中的过程。

1). 现实世界(Real World)

客观存在的世界就是现实世界,它独立于人们的思想之外。现实世界存在无数事物,每一个客观存在的事物可以看做是一个个体,个体有多项特征和属性。比如,电视机就有价格,品牌,可视面积大小,是否彩色等特征。而不同的人,只会关心其中的一部分属性,一定领域内的个体有着相同的特征。

2). 信息世界(Information World)

信息世界是现实世界在人们头脑中的反映,人的思维将现实世界的数据抽象化和概念化,并用文字符号表示出来,就形成了信息世界。下面是人们在研究现实世界过程中常常用到的术语:

(1) 实体 (Entity)

客观存在且可以互相区别的事物。如一名学生,一台电脑,一本书,一场聚会。实体是信息世界的基本单位。

(2) 属性 (Attribute)

个体的某一特征称为属性,一个实体可以有多个属性,每一个属性都有其取值范围和取值类型。

(3) 键 (Key)

能在一个实体集中唯一标识一个实体的属性称为键,键可以只包含一个属性,也可以同时包含多个属性。有多个键时,选择一个作为主键。键中的属性称为主属性。

(4) 联系 (Relation)

实体之间互相作用,互相制约的关系称为实体集的联系。实体之间的联系有三种:一对一联系,一对多联系,多对多联系。

3). 机器世界

机器世界又称数据世界,信息世界中的信息经过抽象和组织,以数据形式存贮在计算机中,就称为机器世界。与信息世界一样,机器世界也有其常用的、用来描述数据的术语,这些术语与信息世界中的术语有着对应的关系。

(1) 字段 (Field)

字段,也称为数据项(Item),标记实体的一个属性叫做字段,它是可以命名的最小信息单位。例如学生有学号、姓名、性别、出生日期等字段。字段与信息世界的属性相对应。

(2) 记录 (Record)

记录是有一定逻辑关系的字段的组合。它与信息世界中的实体相对应,一个记录可以描述一个实体。例如一个学生的记录由“学号、姓名、性别、出生日期”等字段组成。

(3) 文件 (File)

文件是同一类记录的集合。文件的存储形式有很多种,比如顺序文件、索引文件、直接文件、倒排文件等等。

4). 三个世界的转换

由以上对三个世界的描述可以看到,从现实世界到信息世界再到机器世界,事务被一层层抽象,加工,符号化,逻辑化,而这个过程都是有一定联系的。

1). 信息模型(概念模型)与E-R方法

为了把现实世界中的具体事物进行抽象,人们常常首先把现实世界抽象为信息世界,然后再将信息世界转化为机器世界。在把现实世界抽象为信息世界的过程中,实际上是抽象出现实系统中有应用价值的元素及其关联。这时所形成的信息结构是概念模型。在抽象出概念模型后,再把概念模型转换为计算机上某一DBMS支持的数据模型。需要一种方法能够对现实世界的信息进行描述。

实体-联系方法(即E-R方法)是P.P.S.Chen于1976年提出的,这种方法由于简单、实用,所以得到了非常普遍的应用,也是目前描述概念模型最常用的方法。它使用的工具称作E-R图,它所描述的现实世界的信息结构称为企业模式,也把这种描述结果称为E-R模型。下面概述一下E-R方法的要点。

(1) 用矩形框表示实体,实体名(例如学生)写在框内。

(2) 用椭圆框表示实体的属性,框内写上属性名,并用线段连到相应的实体。例如学生的属性有姓名、学号和年龄等。

(3) 用菱形框表示实体间的联系,在框内写上联系名,用线段连接菱形框与矩形框,在线段旁注上联系的类型(一对一、一对多、多对多)。如联系也具有属性,则把属性和菱形框用线段连上。

E-R图是抽象描述现实世界的有力工具,它与计算机所支持的数据模型相独立,它更接近于现实世界。虽然现实世界丰富多彩,各种信息十分繁杂,但用E-R图可以很清晰地表示出其中的错综复杂关系。下面我们用E-R图来表示某个学校的教务管理的概念模型。

教务管理涉及的实体有:

.班级 属性有班级编号,班级名称,专业,班主任;

.教师 属性有教师号,姓名,性别,年龄,职称,专业;

.学生 属性有学生号,姓名,性别,班级编号;

.课程 属性有课程号,课程名,课时,学分,教材。

这些实体之间的联系如下:

.一个班有多个教师授课,一个教师可以教多个班级,班级和教师具有多对多的联系;

.一个班有多名学生,但一个学生只能在一个班注册,因此班级与学生是一对多联系;

.在某个时间某个地点一位教师可指导多个学生,但某个学生在某一时间和地点只能被一位教师所指导,因此教师与学生是一对多联系;一位教师可讲授多门课程,一门课程可由多位教师讲授,每位教师讲授某门课程都有一个评价,教师与课程之间是多对多联系;

.一个学生可选修多门课程,一门课程允许多个学生选修,每个学生选修某门课程都有一个分数(成绩),因此学生与课程之间是多对多联系。

如果某个部门的概念模型中涉及的实体和实体的属性较多,可以把实体及其属性在另一幅图上画出,使E-R图更清晰地表明实体以及实体之间的联系,这样图ER可以分为图ER1

2). 结构数据模型

结构数据模型是机器世界的数据模型。实际数据库系统中所支持的数据模型主要有层次模型、网状模型和关系模型。

(1) 层次模型

用树型结构来表示实体之间联系的模型称为层次模型。层次模型是满足有且仅有一个根结点,非根结点有且仅有一个父结点的基本层次联系的集合。

构成层次模型的树是由结点和连线组成的,结点表示实体集,连线表示相连两个实体之间的联系,这种联系只能是一对多的。通常把表示“一”的实体放在上方,称为父结点;而把表示“多”的实体放在下方,称为子结点。

(2) 网状模型

用网状结构来表示实体之间联系的数据模型称为网状模型。网状模型可以有一个以上结点无父结点;至少有一个结点具有多于一个的父结点。

(3) 关系模型

用一个二维表格表示实体和实体之间联系的模型,称为关系模型。我们将在第三节中较详细地介绍。3. 数据模型的三要素

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

1). 数据结构

数据结构是所研究的对象类型的集合,在数据库系统中通常按照数据结构的类型来命名数据模型,如层次结构、网状结构和关系结构的模型分别命名为层次模型、网状模型和关系模型。

2). 数据操作

数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。数据操作是用来描述系统的信息变化的,是对系统动态特性的描述。

数据操作的种类有以下两种:检索(如查询)和更新(增、删、改)。

3). 数据的约束条件

数据的约束条件是完整性规则的集合,完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。

4. 数据库技术的应用

数据库技术的应用领域非常广,从目前接触到的一些应用的发展来看,尤其是Internet的发展以及多种信息技术交叉与发展,还对数据库技术提出了更多的需求,从而促进了数据库技术的不断发展。

相关文档