当前位置:  首页  >  PHP教程  >  PHP 基础  >  开发经验

数据模型之概念模型

我学数据库(4)--数据模型之概念模型了解完数据模型的共性之后,再深层次的了解一下概念模型,下次随笔再学习逻辑模型,物理模型不再细究,因为这涉及到DBMS实现的问题,太深奥了,就我个人的情况能力还不够。在前面说了,概念模型是对现实世界的建模,是面

我学数据库(4)--数据模型之概念模型 了解完数据模型的共性之后,再深层次的了解一下概念模型,下次随笔再学习逻辑模型,物理模型不再细究,因为这涉及到DBMS实现的问题,太深奥了,就我个人的情况能力还不够。 在前面说了,概念模型是对现实世界的建模,是面

我学数据库(4)--数据模型之概念模型

  了解完数据模型的共性之后,再深层次的了解一下概念模型,下次随笔再学习逻辑模型,物理模型不再细究,因为这涉及到DBMS实现的问题,太深奥了,就我个人的情况能力还不够。

  在前面说了,概念模型是对现实世界的建模,是面向用户的,所以既要能较全面的表达应用中的各种语义,也要易于用户理解。概念模型也叫信息模型,是现实世界到信息世界的第一层抽象,需要一些基本概念做支持,所以先来了解一下这些概念。在学这些概念之前看过一些关于数据库的文章,才知道这些概念对我以后数据库学习非常重要,所以要好好的研究研究这些概念,在这里也分享一下我的学习结果。

  实体,客观存在的,不以主观意志转移的东西,可以相互区别。比如说人啊事啊物啊,也可以是抽象出来的概念或这数据的联系。一个职工、一个学生、一个部门、一门课程都是实体。

  属性,实体的特征,比如一个人,姓名、性别等都是属性。在数据库中一个实体就是靠属性来表述的。

  码,唯一标识实体的属性集成为码,这个其实很好理解,比如一个人如果按身份证号来识别的话,那身份证号就是码;姓名有时候就不行,因为有同名的人哦,当我喊一个人的时候,如果有同名的,就不知道我在叫谁了。

  域,属性的取值范围,虚拟主机,就是值域的意思,比如性别的域为(男,女),不过遇到人妖这样的,就不好办了哈。

  实体型,把相同属性的实体用实体名和属性名来刻画,算是一个模型了吧,比如学生(学号,姓名,性别,……)。

  实体集,就是同一类型的集合,如全体学生就是一个实体集。

  联系,在生活中各事物内部以及事物之间是有联系的,这些抽象到信息世界中后就是实体与实体或者实体型与实体型之间的关系。内部联系是各属性之间的关系,外部联系即实体之间的关系是指不同实体集之间的关系,抽象出来就是实体型之间的关系。

  有一个问题在这提一下,如下:

    (9400,张四,男,19881219,信管系,2007)是表示了一个学生;

    学生(学号,姓名,性别,生日,专业,级别)是学生这个实体型;

    {(9400,张四,男,19881219,信管系,香港虚拟主机,2007),(9401,张三,男,19881211,信管系,2007),……}表示一个实体集。

  来看一下实体、实体型和实体集之间的关系:实体是直接从生活中抽象出来的,实体型是把实体的共同属性抽象出来,实体集就是实体的一个集合,实体是实体型在某一时刻属性取值确定的,可以这么理解,实体型和实体就像是数据类型和变量一样,比如int类型的变量i,取值为0。

  看一下实体型之间的联系,实体型之间的联系其实是实体集之间存在的某种业务关系。分一对一的联系、一对多的联系和多对多的联系。如若实体集A中的每个实体在实体集B中有N个实体(N<=1)与之联系,反之亦然,则程两实体集具有一对一联系,记为1:1;如果实体集B中有N个实体(N>1)与之联系,反之,对于实体集B中的每一个实体A中至多只有一个实体与之对应,则称实体集A与B具有一对多联系,记为1:N;如若对实体集A中的每个实体,B中有N个实体(N>1)与之对应,反之,美国空间,B中的每个实体,A中也有N个实体(N>1)与之对应,责成两实体集具有多对多的联系。其实一对一和一对多是多对多联系当中的特殊情况,所以多对多联系定义中的N取值只取大于一的情况。这里用Visio软件画了一下,如下图:

  另外好多资料中提及到了两个以上的实体之间的联系,本人觉得就是来一百个,我也是把它变成任意两个之间的联系来分析,所以对于两个以上实体之间的联系我决定不在详细了解。

  有经验的网友可能发现了,其实还有一种状况就是单个实体型内的联系。这种情况并不陌生,比如职工实体型中领导与被领导的联系,部门下的下一级别职能部门都是这种状况。而且这两种都是一对多的联系,如下图:

  概念模型的基本概念了解完了,看看如果用方法来表示这种模型。一种表示方法就是实体-联系方法。这种方法呢在这里只作部分了解,到以后的数据库设计的时候再信息了解。该方法用E-R图来描述现实世界的概念模型,它提供了表示实体型、属性和联系的方法。实体型用矩形表示,属性用椭圆表示,联系用菱形表示,实体型和属性之间用无向边连接起来,另外一些联系也有属性,它们之间也是用无向边连接。

  好了,这次随笔就写到这了,下次随笔就要学习逻辑模型咯。对了,学习的过程中呢多注意一下健康,在这里贴一则网上流转的[老中医顺口溜],和大家分享:红薯食来好处多,香菇赛过抗癌药;白菜通便排毒素,瓜豆消肿又利尿;番茄补血有润肤,芹菜降压抗衰老;苦瓜清心又明目,黄瓜减肥清热好;玉米抑制胆固醇,山楂降压抗衰老;花生降脂治贫血,健脑乌发吃核桃;芝麻润肤又乌黑,蜂蜜益寿又润燥;依据情况选食疗,多样进食营养好。

posted on

Powered by:
博客园
Copyright © 满天海晨星

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有