点击菜单“File”---->“New Model”

点击【OK】按钮后,将进入如下的画面

系统将出现一个工具栏如下,用于在设计面板中设计模型

单击Entity图标,然后在主面板中单击一次便可添加一个实体

切换回一般鼠标模式,双击已经添加的实体,弹出设置属性的对话框

在General选项卡中可以设置实体的Name和Code等属性,如下图所示:Code是实体在数据库中的实际名称,一般用英文,Name是显示的名称,一般用中文,方便理解

切换到Attributes选项卡可以添加实体的属性

设置完成之后如下图所示

关系

  关系用于表示一个实体与另一个实体之间的对应关系,分为“一对一(1:1),一对多(1:n),多对一(n:1),多对多(m:n)”4种对应关系,一对多和多对一其实就是方向相反,所以实际上就是一对一,一对多,多对多。最常用的就是“一对多(1:n)”,比如公司实体和员工实体就是一对多关系,一个公司有多名员工,而一名员工只会属于一个公司,再比如班级实体和学生实体就是一对多关系,一个班级有多个学生,一个学生只会属于一个班级。

  在设计面板中添加一个班级(Class)实体,然后建立班级实体和学生实体的“一对多”关联关系,如下图所示:

系统默认会给该关系命名为Relationship_1,切换到鼠标指针模式,双击Relationship_1,即可打开关系的属性窗口,如下图所示:

切换到Cardinalities选项卡,如下图所示:

  这里可以修改是一对多还是多对多之类的关系,Role name是设置在模型中显示的文字,没有多大的意义,多的一方有0,n和1,n两种,也就是说,一个班级可以对应多个学生,那么一个班级中最少是没有学生还是要至少存在一个学生,同意的一的一方有0,1和1,1两种,就是说一个学生可以不属于任何班级呢还是必须属于某一个存在的班级,而现实生活中比较符合常理的应该是“一个班级中至少存在一个学生,学生必须属于某一个存在的班级”,所以这里都选至少是1,所以最终的设置界面如图:

最终生成的E-R图如下:

继承

  在概念模型中的继承与OO模型中的继承是同一回事,就是要抽象出一个实体,其他实体,其他实体继承该实体后就拥有该实体的属性。

  以选课系统为例子,现在有学生实体,有教师实体,其实他们都是人,具有人的属性,所以我们可以抽象出一个人的实体,人具有性别,生日,名字,年龄等属性,教师具有职称、工号等属性,这是学生没有的,所以不能放在人实体中,学生具有学号属性是教师没有的。

  在概念模型中创建具有继承关系的E-R图之前,首先要开启工具栏上被禁用掉的三个图标,如下图所示:

关于如何开启工具栏上被禁用掉的三个图标,参考"开启PowerDesigner15工具栏上的被禁用掉的图标"

在概念模型中创建具有继承关系的E-R图

  这里的继承只是概念模型,在DBMS中是没有继承这种说法的,所以在逻辑模型和物理模型中,系统就会将继承转换为实际的实体和表,这里只是概念模型,所以才有继承的说法。

关联(Association)

  Association也是一种实体间的连接,在Merise模型方法学理论中,Association是一种用于连接分别代表明确定义的对象的不同实体,这种连接仅仅通过另一个实体不能很明确地表达,而通过“事件(Event)”连接来表示。也就是说,实体和实体之间存在着关系(多对多),但是这种关系还存在其他的属性,这些属性如果作为一个明确的实体来表示又不合适,所以就使用了Association来表达,这种关系之间一般是一个“事件”虚实体,也就是说是一个动词对应的实体。

  以实际的例子来说明:现在有了学生实体,有课程实体,一个学生可以选择多门课程,一门课程也可以被多个学生选择来学习,所以学生和课程之间就存在一个“选课”的Association,Association记录了学生选课的时间,选课的状态;一个学生会对应多个选课结果选择多门课程,,一门课程对应多个选课学生选课,所以“学生实体”和“课程实体”与“选课”的关系都是“一对多”,添加关联连接,一门课程可能太枯燥了,没有学生来选,所以“课程”对应“选课”可能是0,n的关系,一个学生可能学分够了这学期一门课都不选,所以“学生”对应“选课”也可能是0,n的关系,所以最终形成的概念模型如下图所示:

在Powerdesigner中创建概念数据模型的更多相关文章

  1. 在powerdesigner中创建物理数据模型

    物理数据模型(PDM)是以常用的DBMS(数据库管理系统)理论为基础,将CDM/LDM中所建立的现实世界模型生成相应的DBMS的SQL语言脚本.PDM叙述数据库的物理实现,是对真实数据库的描述 PDM ...

  2. PowerDesigner中创建Oracle表全过程记录

    本文记录如何在PowerDesigner中创建一个Oracle结构的表. 在进行本文阅读之前,需要在PowerDesigner进行 DBMS修改,DataBase创建,用户创建,表空间创建.   1. ...

  3. PowerDesigner使用教程 —— 概念数据模型 (转)

    一.概念数据模型概述    概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充.它从用户的观点出发对信息进行建模,主要用于 ...

  4. PowerDesigner(五)-概念数据模型(CDM生成LDM,PDM和OOM)(转)

    概念数据模型 概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用户之 ...

  5. PowerDesigner(五)-概念数据模型(CDM生成LDM,PDM和OOM)

    概念数据模型 概念数据模型(Conceptual Data Model,CDM):表达的是数据整体逻辑结构,该结构独立于任何软件和数据存储结构,即它只是系统分析人员,应用程序设计人员,维护人员和用户之 ...

  6. PowerDesigner概念数据模型 CDM

    目标:本文主要介绍PowerDesigner中概念数据模型 CDM的基本概念. 一.概念数据模型概述数据模型是现实世界中数据特征的抽象.数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2 ...

  7. PowerDesigner 概念数据模型(CDM) 说明

        ref: https://blog.csdn.net/tianlesoftware/article/details/6871179 关于PowerDesigner的说明参考: PowerDes ...

  8. PowerDesigner教程系列(二)概念数据模型

    目标:本文主要介绍PowerDesigner概念数据模型以及实体.属性创建.一.新建概念数据模型1)选择File-->New,弹出如图所示对话框,选择CDM模型(即概念数据模型)建立模型. 2) ...

  9. PowerDesigner 概念数据模型

    (转自:http://www.cnblogs.com/yxonline/archive/2007/04/09/705479.html) 目标:本文主要介绍PowerDesigner中概念数据模型 CD ...

随机推荐

  1. ThinkPHP中的四种路由形式

    1.普通形式路由(get形式路由) 路由形式:http://网址/入库文件?m=分组&c=控制器&c=控制器&a=方法名&参数=参数 例子:http://localho ...

  2. .gitignore文件如何编写?

    .gitignore文件即 项目中不需要被追踪(track)且上传到git系统的文件 <1>忽略文件的原则 a.忽略操作系统自动生成的文件,比如缩略图等 b.忽略编译生成的中间文件.可执行 ...

  3. php取得当前时间函数

    php取得当前时间函数文章提供了php的几种获取当前时间的函数,date,time等哦,同时告诉我如何解决时区问题哦. php获取当前时间 使用函式 date() 实现 <?php echo $ ...

  4. 更改Chrome浏览器安装位置的方法

    因为Google Chrome独特的优势,我们很多人都在使用它,但同时我们也会发现它是默认安装在我们的系统盘的,那么是否就不能修改其安装路径了呢?其实不然,这里介绍一种方法,亲测可行. 一.正常安装 ...

  5. Filebeat配置paths里,不支持递归所有子目录

    这个知识点要牢记哟,不然,牛B吹大了,收不回哈. 官方文档为证: Currently it is not possible to recursively fetch all files in all ...

  6. 实现nlp文本生成中的beam search解码器

    自然语言处理任务,比如caption generation(图片描述文本生成).机器翻译中,都需要进行词或者字符序列的生成.常见于seq2seq模型或者RNNLM模型中. 这篇博文主要介绍文本生成解码 ...

  7. 更快的速度、更好的服务——易普优APS云排程

    众所周知软件执行效率受制于硬件性能,市面上的APS产品多为单机版本,企业要应用好APS,保证紧急插单.计划下发全程无忧,用户电脑硬件性能是不容忽视的一大瓶颈.APS的直接用户是车间管理人员.计划员,而 ...

  8. MySQL 20个经典面试题

    1.MySQL的复制原理以及流程 基本原理流程,3个线程以及之间的关联: 1. 主:binlog线程——记录下所有改变了数据库数据的语句,放进master上的binlog中: 2. 从:io线程——在 ...

  9. 2017 Idea 最简易破解 (无需jar包)(个人整理)

    首先 修改host文件: 文件路径:C:\Windows\System32\drivers\etc\hosts 修改:将“0.0.0.0 account.jetbrains.com”追加到hosts文 ...

  10. 【SQL】177. Nth Highest Salary

    Write a SQL query to get the nth highest salary from the Employee table. +----+--------+ | Id | Sala ...