数据模型是从计算机角度看到的模型。要求用有严格语法和语义的语言对数据进行严格的形式化定义、限制和规定,使模型能转变为计算机可以理解的格式。主要包括网状模型、层次模型、关系模型等。数据库中的数据是高度结构化的,也就是说,数据库不仅要考虑记录内的各个数据项之间的关系,还要考虑记录与记录之间的关系。
关系模型是目前最重要的一种模型。数据库领域当前的研究工作都是以关系数据模型为基础的。一个关系模型的逻辑结构是一张二维表,它由行和列组成,每一行称为一个元组,每一列称为一个字段。
数据库需根据应用系统中数据的性质、内在联系,按照管理的要求来设计和组织。在现实世界中,事物内部以及事物之间是有联系的,实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体集之间的联系。在关系型数据库中,两个实体之间的联系可以分为一对一、一对多和多对多三类。
一对一联系:对于实体集A中的每一个实体,实体集B中至多存在一个实体与之联系,反之亦然,则称实体集A与实体集B之间存在一对一联系,记作l:l。
例如,学校中一个班级只有一个正班长,而一个班长只在一个班中任职,则班级与班长之间存在一对一联系;商场中购物店与店长、乘车旅客与车票之间等都存在一对一的联系。如图2-7(a)所示。
一对多联系:对于实体集A中的每一个实体,实体集B中存在多个实体与之联系;反之,对于实体集B中的每一个实体,实体集A中至多只存在一个实体与之联系,则称实体集A与实体集B之间存在一对多的联系,记作1:n。
例如,一个班里有很多学生,一个学生只能在一个班里注册,则班级与学生之间存在一对多联系;一个商场有许多商品,商场和商品之间存在1对多联系。如图2- 7(b)所示。(www.xing528.com)
多对多联系:对于实体集A中的每个实体,实体集B中存在多个实体与之联系;反之,对于实体集B中的每一个实体,实体集A中也存在多个实体与之联系,则称实体集A与实体集B之间存在多对多联系,记作m:n。
例如,一个学生可以选修多门课程,一门课程可同时由多个学生选修,则课程和学生之间存在多对多联系;一个顾客可以购买多种商品,一种商品可由多个顾客购买.则商品和顾客之间存在多对多联系。如图2-7(c)所示。
图2-7 两 个实体集之间联系的三种情况
客观事物及其联系是信息之源,是组织和管理数据的出发点。为了把现实世界中的具体事物抽象、组织为某一DBMS支持的数据模型,首先要将现实世界抽象为信息世界,然后将信息世界转换为机器世界。也就是说,首先把现实世界中的客观对象抽象为某一种信息结构,这种信息结构不依赖于具体的计算机系统,不是某一个DBMS支持的数据模型,而是概念级的模型,然后再把概念模型转换为计算机上某DBMS支持的数据模型。这一过程如图2-8所示。
图2-8 现实世界数据抽象图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。