一、概念(Conceptual)模型CDM

数据库概念模型实际上是现实世界到机器世界的一个中间层次。

数据库概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。

建立数据概念模型,就是从数据的观点出发,观察系统中数据的采集、传输、处理、存储、输出等,经过分析、总结之后建立起来的一个逻辑模型,它主要是用于描述系统中数据的各种状态。

这个模型不关心具体的实现方式(例如如何存储)和细节,而是主要关心数据在系统中的各个处理阶段的状态。实际上,数据流图也是一种数据概念模型。

①能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是现实世界的一个真实模型;

②易于理解,可以用它和不熟悉计算机的用户交换意见。用户的积极参与是数据库设计成功的关键;

③易于更改,当应用环境和应用要求改变时容易对概念模型修改和扩充;

④易于向关系、网状、层次等各种数据模型转换。

概念模型就是在了解了用户的需求 , 用户的业务领域工作情况以后 , 经过分析和总结 , 提炼出来的用以描述用户业务需求的一些概念的东西 ;

如销售业务中的 客户 和 定单 , 还有就是 商品 , 业务员 , 用 USE CASE 来描述就是 : 业务员 与 客户 就购买 商品 之事签定下 定单 , 概念模型使用 E-R 图表示 , E-R 图主要是由实体 , 属性和联系三个要素构成的 , 该阶段需完成 :

1. 该系统的商业目的是什么 , 要解决何种业务场景
        2. 该业务场景中 , 有哪些人或组织参与 , 角色分别是什么
        3. 该业务场景中 , 有哪些物件参与 ,
        4. 此外需要具备相关行业经验 , 如核心业务流程 , 组织架构 , 行业术语
        5. 5w1h : who ,  what , when , where , why,  how

二、逻辑(Logical)模型LDM

逻辑模型就是要将概念模型具体化,就是要实现概念模型所描述的东西,需要哪些具体的功能,处理哪些具体的信息,是对概念模型的进一步细化。

①数据结构:主要描述数据的类型、内容、性质、以及数据之间的联系,是整个数据模型的基础,而针对数据的操作和数据之间的约束都是建立在数据结构的基础上的;

②数据操作:主要定义了在相应的数据结构上的操作类型和操作方式(数据库中的增、删、改、查等);

③数据约束:主要用来描述数据库中数据结构之间的语法、词义联系以及彼此之间的相互约束和制约关系(如MySQL中使用外键保证数据之间的数据完整性)。

  还以销售业务为例:“客户”信息基本上要包括:单位名称,联系人,联系电话,地址等属性;“商品”信息基本上要包括:名称,类型,规格,单价等属性;“定单”信息基本上要包括:日期和时间属性。并且“定单”要与“客户”,“业务员”和“商品”明细关联。

  系统需要建立几个数据表:业务员信息表,客户信息表,商品信息表,定单表。

  系统要包括几个功能:业务员信息维护,客户信息维护,商品信息维护,建立销售定单 。

  简单概括,就是——“做什么”

逻辑模型是将概念模型转化为具体的数据模型的过程 , 即按照概念结构设计阶段建立的基本 E-R 图 , 按选定的管理系统软件支持的数据模型 (层次/网状/关系/面向对象) , 转换成相应的逻辑模型 , 这种转换要符合关系数据模型的原则 ;

以销售业务为例 :

客户信息基本上要包括 : 单位名称 , 联系人 , 联系电话 , 地址等属性
        商品 信息基本上要包括 : 名称 , 类型 , 规格 , 单价等属性
        定单 信息基本上要包括 : 日期和时间属性 ;

并且 定单 要与 客户 , 业务员 和商品 明细关联 , 该阶段需完成 :

1. 分多少个主题 , 每个主题包含的实体
                2. 每个实体的属性都有什么
                3. 各个实体之间的关系是什么
                4. 各个实体间是否有关系约束

三、物理(Physical)模型PDM

物理模型是对真实数据库的描述。如关系数据库中的一些对象为表、视图、字段、数据类型、长度、主键、外键、索引、约束、是否可为空、默认值。

  在具体的物理介质上实现出来。如:数据库使用SQL Server 2000,这样就可以编写具体的SQL脚本在数据库服务器上将数据库建立起来。其中包括业务员信息表,客户信息表,商品信息表,定单表。

  简单概括,就是——“怎么做”

物理模型就是针对上述逻辑模型所说的内容 , 在具体的物理介质上实现出来 , 系统需要建立几个数据表 : 业务员信息表 , 客户信息表 , 商品信息表 , 定单表 ; 系统要包括几个功能 : 业务员信息维护 , 客户信息维护 , 商品信息维护 , 建立销售定单 ; 表 , 视图 , 字段 , 数据类型 , 长度 , 主键 , 外键 , 索引 , 约束 , 是否可为空 , 默认值 , 该阶段需完成 :

1. 类型与长度的定义
        2. 字段的其他详细定义 , 非空 , 默认值
        3. 却准详细的定义 , 枚举类型字段 , 各枚举值具体含义
        4. 约束的定义 , 主键 , 外键

这三个过程 , 就是实现一个数据库设计的三个关键的步骤 , 是一个从抽象到具体的一个不断细化完善的分析 , 设计和开发的过程 ;

数据库 概念模型CDM 逻辑模型LDM 物理模型PDM相关推荐

  1. 数据库理论——概念模型、逻辑模型、物理模型

    概念模型.逻辑模型.物理模型 1.概念模型 在了解了用户的需求,用户的业务领域工作情况以后,经过分析和总结,提炼出来的用以描述用户业务需求的一些概念的东西. 如销售业务中的"客户" ...

  2. 数据库建模,概念模型、逻辑模型、物理模型的区别和转化

    关于数据库理论中概念模型.逻辑模型.物理模型之间的区别.随机复习上网并复习,并在此记录一下,数据库建模是对现实世界进行分析.抽象.并从中找出内在联系,进而确定数据库的结构. 1.概念模型:就是从现实世 ...

  3. 关于数据库建模,概念模型、逻辑模型、物理模型的区别和转化

    一.关于数据库理论中概念模型.逻辑模型.物理模型之间的区别. 二.数据库建模是对现实世界进行分析.抽象.并从中找出内在联系,进而确定数据库的结构. 1.概念模型:就是从现实世界到信息世界的第一层抽象, ...

  4. 概念模型、逻辑模型、物理模型。

    在数据仓库中的含义 总的来说,数据仓库的结构采用了三级数据模型的方式,即概念模型.逻辑模型.物理模型. 概念模型:也就是业务模型,由企业决策者,商务领域知识专家和IT专家共同研究和分析企业级的跨领域业 ...

  5. 【架构设计】领域模型(概念模型) 、逻辑模型、物理模型、贫血模型、充血模型概念总结【待读与标记】

    本文选自: http://www.jianshu.com/p/fe45506ea358 http://blog.csdn.net/zsy_gemini/article/details/9060105 ...

  6. 【软件工程】概念模型、逻辑模型、物理模型

    随着系统开发的推进与成熟,系统模式可能代表了不同的细节层次. 系统的模式包含概念模型.逻辑模型.物理模型. 这部分不难令我想到数据库系统的模式分层与数据独立性涉及到的子模式.逻辑模式.物理模式. 概念 ...

  7. 【计算机基础】数据库中的数据模型——概念模型、逻辑模型、物理模型

    数据模型应满足三方面的要求,一是比较真实的模拟现实世界,二是容易被人理解的方式,三是便于在计算机中实现.一种模型要很好地满足这三方面的要求目前尚很困难,因此数据库中针对不同的对象和使用目的,采用不同的 ...

  8. 概念模型、逻辑模型和物理模型的重新理解

    还记得学习数据库系统原理时,米老师带着我们看了一二章.这其中主要讲的就是这三种模型.当时觉得自己可懂了.可是前几天师父在验收软工文档时说,来给我说说这三种模型吧,才发现自己连个一二三都说不出来,在风中 ...

  9. 概念模型,逻辑模型,物理模型

    自从接触到数据库到如今这三个概念大家理解的还有些不清楚,今天来为大家解答疑惑,共同提高,结合生活理解 概念模型 概念模型就是在了解了用户的需求,用户的业务领域工作情况以后,经过分析和总结,提炼出来的用 ...

最新文章

  1. Spring-AOP的实现方法
  2. Mac用Java写出hello,mac中c#的helloworld
  3. Pinpoint 插件开发
  4. 一天搞定CSS:支持IE的Layout布局--16
  5. C语言中低位存放,C语言 大端小端存储解析以及判断方法
  6. 彻底解决Ubuntu 执行make xconfig出错
  7. Effective Java 英文 第二版 读书笔记 Item 14:In public classes,use accessor methods,not public fields...
  8. PHP允许输入负数,php exec在linux中返回值不能为负数
  9. 制作和unity调用动态链接库dll文件
  10. 用python语言实现反恐精英基础版-案例
  11. NAS DIY的设计和实施过程-5-Openfiler篇
  12. python 如果你的年龄大于18_02Python基础
  13. 在chinapub买的书还没有到?
  14. Mysql UDF Bug “ERROR 1125 (HY000): Function ‘xxx‘ already exists“
  15. unicode转中文
  16. 企立方:拼多多关键词出价多少合适
  17. CodeCombat代码全记录(Python学习利器)--边地森林(第二章)代码4
  18. Windows安装mysql,亲测有效
  19. 服务器显示隐藏任务,在Windows 10中隐藏任务栏的简单方法
  20. 数字双向码的matlab仿真,matlab2016 ccs

热门文章

  1. 用devc++表白_中山院表白墙丨电科大中山院的帅哥,不会走路吗?没事出来走两步给我瞧瞧...
  2. 7月第3周业务风控关注 | CVERC发布预警 不要下载以下十款有害应用
  3. John McCarthy:LISP-关于它的过去和未来的记录-1980
  4. Intersection Observer
  5. HTML中限制input 输入框输入内容
  6. PyQt5 技术篇-调用输入对话框(QInputDialog)获取用户输入内容。
  7. Java的System.out.println()深入解析理解
  8. 吉他初学者入门(必看 很有帮助)
  9. 南卡与JBL蓝牙耳机哪款比较好?数码资深玩家带你深度评测了解
  10. android开发avg游戏,【图片】谈谈AVG游戏的Android移植(NScripter与吉里吉里)(转)【ons安卓吧】_百度贴吧...