首先是概念模型个物理模型的区别,概念模型,即ConceptualDataMode,是没和具体类型的数据库(如SQL Server、MySql)的对应,是一种抽象的,而物理模型是指定了某种具体类型的数据库。

然后是概念模型的设计:

首先是实体(Entity),在实体的属性中,如下图

M表示是否必备,即是否可以为NULL;

P表示主键;

而在关系(以部门与员工的关系为例)的设置中,如下图:

cardinalities页面的cardinality指的是基数,即每个部门拥有0到n个员工,也可以选1到n,即一个部门必须至少有一个员工(同Mandatory属性);

每个数据项(Data Item,即实体的一个属性)的code默认是不可以重复的,当他们同名是会被power designer认为是同一个数据项,要使他们可以重复,设置如下图(工具->Model Options):

如图的Model Setting里面的Data Item的Unique code选项去掉后就可以重复了;

概念模型写好后,建立物理模型(选项->generate Physical Data Model);

在物理模型中,可以建立索引,如下图

新建一个与员工姓名的索引,双击新建的条目,进入下面的界面

如果员工名字不能重复,可以选上Unique选项,使之为唯一性索引;

也可以选择Cluster来设定其是否为聚集索引(Mysql类型的物理模型可能没有该选项);

在Columns选项卡中,点击下面圈出的按钮,在弹出框中选择需要在那个字段上建立索引,只有指定了在哪个列上建立索引,前面建立的索引才有效,因为前面只是指定了索引名字

下面可以建立数据库了,数据库->generate Database;就能生成数据库的生成语句,如下图

上面生成的SQL语句不包括建立数据库的语句,只有建立表啊外键上面的语句, 要包含建立数据库的语句,则:模型->Model Properties;如下图,点击圈出的按钮

再重新生成数据库创建语句。

PowerDesigner学习笔记的更多相关文章

  1. powerdesigner学习笔记【转载】

    转自:http://blog.itpub.net/11968859/viewspace-620440/ 谢谢! 1.做CDM模型的时候,因为开始定义ITEM的时候,没有注意把NAME和CODE全定义成 ...

  2. PowerDesigner 学习笔记

    软件:PowerDesginer16.5 首先说一下对应的模型 New Model  --->  Model Type 作为一个英语渣,实在是压力颇大,然而汉化经常会导致无故的BUG,所以简单翻 ...

  3. PowerDesigner 15学习笔记:十大模型及五大分类

    个人认为PowerDesigner 最大的特点和优势就是1)提供了一整套的解决方案,面向了不同的人员提供不同的模型工具,比如有针对企业架构师的模型,有针对需求分析师的模型,有针对系统分析师和软件架构师 ...

  4. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  5. PowerDesigner 学习:十大模型及五大分类

    个人认为PowerDesigner 最大的特点和优势就是1)提供了一整套的解决方案,面向了不同的人员提供不同的模型工具,比如有针对企业架构师的模型,有针对需求分析师的模型,有针对系统分析师和软件架构师 ...

  6. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  7. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  8. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  9. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

随机推荐

  1. [转]Android开源测试框架学习

    近期因工作需要,分析了一些Android的测试框架,在这也分享下整理完的资料. Android测试大致分三大块: 代码层测试 用户操作模拟,功能测试 安装部署及稳定性测试 代码层测试 对于一般java ...

  2. Prolog学习:数独和八皇后问题

    上一篇简单介绍了下Prolog的一些基本概念,今天我们来利用这些基本概念解决两个问题:数独和八皇后问题. 数独 数独是一个很经典的游戏: 玩家需要根据n×n盘面上的已知数字,推理出所有剩余空格的数字, ...

  3. e742. 加入标签的可拖动能力

    This example demonstrates how to modify a label component so that its text can be dragged and droppe ...

  4. 【经验之谈】Git使用之TortoiseGit配置VS详解;国内几大Git代码托管网站

    转载自: http://www.cnblogs.com/xishuai/p/3590705.html   http://www.cnblogs.com/shanyou/p/3662482.html

  5. DedeCMSV57数据库结构文档(数据字典)

    表名:dede_addonarticle(ENGINE=MyISAM/CHARSET=gbk)   字段名 说明描述 具体参数 aid 文章ID mediumint(8) unsigned NOT N ...

  6. JavaScript对数组的处理(一)

    数组创建 JavaScript中创建数组有两种方式,第一种是使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组 var arr2 = new Array( ...

  7. HTTP Analyzer——WEB调试代理

    HTTP Analyzer 是一个实时的web调试代理,如果你对Fiddler不陌生的话,HTTP Analyzer 就是和Fiddler具备一样功能的调试代理. 推荐这个软件而不推荐Fiddler的 ...

  8. XML 中可嵌入 cmd命令脚本

    原文要参照代码 1. XML解析 Task逻辑块可相互组合,形成复杂的树状结构,其结构用XML表示,即写成XML文件的形式. 样例如下: <!-- 顺序执行块 --> <seq> ...

  9. UNIX环境编程学习笔记(17)——进程管理之进程的几个基本概念

    lienhua342014-10-05 1 main 函数是如何被调用的? 在编译 C 程序时,C 编译器调用链接器在生成的目标可执行程序文件中,设置一个特殊的启动例程为程序的起始地址.当内核执行 C ...

  10. Spring依赖注入原理分析

    在分析原理之前我们先回顾下依赖注入的概念: 我们常提起的依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念.具体含义是:当某个角色( ...