PowerDesigner使用教程
- 格式:ppt
- 大小:1.01 MB
- 文档页数:25
PowerDesigner使用说明书一、正向工程(从概念模型到物理模型)1、新建概念模型(CDM),打开powerdesigner,选择File->New Model,出现New Model窗口,如图1所示:图1(1) Conceptual Data:创建概念模型(2) Logical Data:创建逻辑模型(3) Physical Data:创建物理模型2、假设创建概念模型,选择Categories->Information->Conceptual Data;然后在下面的Model name 处填入概念模型的名称。
点击OK。
在左侧的浏览器中出现新建的概念模型My_Conceptual_Data_1,如图2所示:双击My_Conceptual_Data_1下的子目录Diagram_1,打开编辑区,如图3所示:图3常用的工具有以下几种::用于创建包;:用于创建实体。
:用于创建视图。
:用于连接。
实体之间的参照关系。
:用于创建存储过程。
:用于创建文件。
如创建Student表,拖动一个实体类到编辑区(拖动方法:鼠标左单击实体类图标,鼠标的箭头会变成实体类图标的样子,然后在编辑区左单击,会出现一个默认名称为Entity_1的实体类,然后右击鼠标释放实体类工具,不然左单击鼠标会一直添加实体类)。
效果如图4所示:双击这个实体类或者右击选择Properties,出现Enity Properties窗口,如图5所示:图5在General选项中有个Name,是实体类的名称,此处填写Student。
然后选择Attributes选项,其中包含了字段名、字段类型、类型的长度、主键的设置等信息,如图6所示:设计好之后,点击确定。
同理建立course表,完成之后效果如图7所示:图73、建立连接选择左单击连接符,然后再左单击一个实体类不放,拖到另一个实体类上,右击鼠标释放关系,双击Relationship_1,出现Relationship Properties窗口,如图9所示:在General选项中填入关系名,点击Cardinalities,出现窗口如图10所示,从图中可以看出,其中包含了众多重要的信息,请按实际项目要求进行设置即可。
powerdesigner基本用法PowerDesigner是一款功能强大的建模工具,它可以帮助我们进行数据建模、业务流程建模、应用程序设计等方面的工作。
本文将详细介绍PowerDesigner的基本用法。
一、PowerDesigner的安装和启动1. 下载PowerDesigner安装包,双击运行安装程序。
2. 安装完成后,在桌面上会出现PowerDesigner的快捷方式,双击打开即可。
二、PowerDesigner界面介绍1. 工具栏:包含了常用的工具按钮,如新建、打开、保存等。
2. 菜单栏:包含了所有功能菜单,可以通过菜单栏进行各种操作。
3. 状态栏:显示当前文档状态和鼠标所在位置信息等。
4. 模型浏览器:显示当前文档中所有对象,并提供对象之间的关系图示。
5. 属性窗口:显示当前选中对象的属性信息。
6. 画布区域:用于绘制各种图形和模型。
三、PowerDesigner数据建模1. 新建数据模型点击“文件”菜单中的“新建”命令,在弹出的对话框中选择“数据模型”,然后选择需要创建的数据库类型(如Oracle、MySQL等)并设置相关参数,最后点击“确定”即可创建一个新的数据模型文件。
2. 创建实体和属性在模型浏览器中右键选择“实体”并选择“新建实体”,在弹出的对话框中输入实体名称和描述等信息,然后点击“确定”即可创建一个新的实体。
接着,在属性窗口中添加该实体的属性,并设置相关参数。
3. 创建关系在模型浏览器中右键选择“关系”并选择“新建关系”,在弹出的对话框中选择需要建立关系的两个实体,并设置相关参数,最后点击“确定”即可创建一个新的关系。
4. 生成DDL脚本当完成数据模型设计后,可以通过PowerDesigner自动生成DDL脚本。
在菜单栏中选择“工具”-“生成DDL脚本”,然后根据需要设置相关参数,最后点击“确定”即可生成DDL脚本。
四、PowerDesigner业务流程建模1. 新建业务流程图点击“文件”菜单中的“新建”命令,在弹出的对话框中选择“业务流程图”,然后设置相关参数,最后点击“确定”即可创建一个新的业务流程图文件。
PowerDesigner12.5的使用说明一.PowerDesigner12.5数据库的连接及数据表的导入 (2)(1)sql server的连接 (2)(2 ) sql server的数据表导入 (7)(3)Oracle的连接 (11)(4)Oracle的数据导入 (13)(5)导入表之后显示字段注释: (15)二.新建的表的导入和导出 (17)(1)逆向导出新建的表 (17)(2)正向从PowerDesigner设计表导入到oracle (19)三.关联表的导入和导出 (22)(1)数据库向PowerDesigner中导入关联表 (22)(2) PowerDesigner向数据库中导入关联表 (24)一.PowerDesigner12.5数据库的连接及数据表的导入(1)sql server的连接打开PowerDesigner12.5,新建一个工作空间创建数据源:点击数据库>configure conn….在弹出的窗口中选择创建新数据源(系统数据源)点击下一步下拉选择SQL Server下一步点击完成。
输入数据库名称以及服务器IP选择使用用户输入登录,写上登录ID和密码记得更改默认的数据库名点击完成,测试成功,说明连接成功(2) sql server的数据表导入连接数据源进行数据表的导入:数据库>connect…选择数据源,输入登录ID和密码,选择文件>逆向工程>Daeabase…选择数据源点确定,勾选要列出的表,点OK(3)Oracle的连接新建工作空间选择ORACLE重复1.1中的步骤修改数据源驱动输入数据源名称和用户名称(4)Oracle的数据导入文件>逆向工程>选择数据源,输入用户ID和密码OK,表生成了(5)导入表之后显示字段注释:右击单表点属性,在弹出窗口中点击Columns下的Cutomize Col….按钮在窗口中勾选Comment查看表注释,完成二.新建的表的导入和导出(1)逆向导出新建的表在数据库中新建两张表:表A和表B。
PowerDesigner逻辑模型操作手册导读:本文是针对使用PowerDesigner软件进行逻辑模型设计的操作手册,旨在帮助读者更好地掌握PowerDesigner软件的逻辑模型设计功能。
1. 逻辑模型概述1.1 逻辑模型的定义逻辑模型是数据库设计中的一个重要环节,它描述了数据库中数据的结构、关联、约束等信息,是数据库设计的基础。
1.2 PowerDesigner逻辑模型的作用PowerDesigner是一款功能强大的数据库建模工具,它能够帮助用户快速、精确地进行逻辑模型设计,提高数据库设计的效率和质量。
2. PowerDesigner逻辑模型的基本操作2.1 新建逻辑模型在PowerDesigner中,用户可以通过“文件”->“新建”->“逻辑模型”来新建一个逻辑模型文件,并选择所需的数据库类型。
2.2 添加实体在新建的逻辑模型中,用户可以通过“模型”->“新建”->“实体”来添加一个实体,并输入实体的名称、描述等信息。
2.3 添加属性在实体中,用户可以通过“编辑”->“新建”->“属性”来添加实体的属性,并设置属性的数据类型、长度、约束等信息。
2.4 建立实体之间的关系在PowerDesigner中,用户可以通过“编辑”->“新建”->“关系”来建立实体之间的关系,并设置关系的类型、角色、约束等信息。
3. PowerDesigner逻辑模型的高级操作3.1 使用逻辑视图逻辑视图是PowerDesigner中的一个重要功能,它能够帮助用户更直观地查看和编辑逻辑模型。
3.2 使用逆向工程PowerDesigner支持逆向工程功能,用户可以通过逆向工程将已有的数据库结构反向导入到PowerDesigner中,从而进行进一步的数据库设计。
3.3 使用生成脚本PowerDesigner提供了生成DDL脚本的功能,用户可以通过选择目标数据库类型和选项,快速生成数据库的建表脚本。
点击物理数据模型,填写模型名、数据库版本:点击ok,如果不⼩⼼选错了,也不要紧,可以在Database选项卡中重新编辑。
接下来将产⽣模型名称、表的⼯具栏:⼯具栏可以建表:填写表名称:Columns编辑表选中右键>属性可以添加序列:给序列命名:给序列定义:查看序列⽣成:⽣成序列的sql语句显⽰如下:可以点击表再添加个字段(项⽬经理Id):可以看⼀下表结构:再建⼀个项⽬经理表:项⽬经理表字段:现在有两个表了:此时点击reference,可以建⽴两个表间,相同字段的主外键关系(带fk的都是从表):此时双击箭头可以对reference进⾏编辑:此时就可以保存了,可以ctrl+s,即可另存为pdm⽂件:保存于桌⾯即可接着可以根据模型来⽣成sql语句:选择在桌⾯⽣成sql即可:可以看到桌⾯上⽣成了sql⽂件:打开crebas.sql/*==============================================================*/ /* DBMS name: ORACLE Version 10g *//* Created on: 2020/4/6 4:00:38 *//*==============================================================*/ -- Type package declarationcreate or replace package PDTypesasTYPE ref_cursor IS REF CURSOR;end;-- Integrity package declarationcreate or replace package IntegrityPackage ASprocedure InitNestLevel;function GetNestLevel return number;procedure NextNestLevel;procedure PreviousNestLevel;end IntegrityPackage;/-- Integrity package definitioncreate or replace package body IntegrityPackage ASNestLevel number;-- Procedure to initialize the trigger nest levelprocedure InitNestLevel isbeginNestLevel := 0;end;-- Function to return the trigger nest levelfunction GetNestLevel return number isbeginif NestLevel is null thenNestLevel := 0;end if;return(NestLevel);end;-- Procedure to increase the trigger nest levelprocedure NextNestLevel isbeginif NestLevel is null thenNestLevel := 0;end if;NestLevel := NestLevel + 1;end;-- Procedure to decrease the trigger nest levelprocedure PreviousNestLevel isbeginNestLevel := NestLevel - 1;end;end IntegrityPackage;/drop trigger "CompoundDeleteTrigger_coder"/drop trigger "CompoundUpdateTrigger_coder"/drop trigger "tib_coder"/drop trigger "CompoundInsertTrigger_coder"/alter table "coder"drop constraint FK_CODER_REFERENCE_PRO_MAN/drop table "coder" cascade constraints/drop table "pro_man" cascade constraints/drop sequence "Sequence_2"/drop sequence "Sequence_3"/drop sequence "coder_seq"/create sequence "Sequence_2"/create sequence "Sequence_3"/create sequence "coder_seq"increment by 1start with 1maxvalue 999minvalue 1cache 20//*==============================================================*/ /* Table: "coder" *//*==============================================================*/ create table "coder" ("cId" NUMBER(10) not null,"cname" varchar2(20),"pmId" number(10),constraint PK_CODER primary key ("cId"))//*==============================================================*/ /* Table: "pro_man" *//*==============================================================*/ create table "pro_man" ("pmId" number(10) not null,"pmName" varchar2(20),constraint PK_PRO_MAN primary key ("pmId"))/alter table "coder"add constraint FK_CODER_REFERENCE_PRO_MAN foreign key ("pmId")references "pro_man" ("pmId")/create trigger "CompoundDeleteTrigger_coder" before deleteon "coder"for each rowdeclareintegrity_error exception;errno integer;errmsg char(200);dummy integer;found boolean;begin-- Errors handlingexceptionwhen integrity_error thenraise_application_error(errno, errmsg);end;/create trigger "CompoundUpdateTrigger_coder" before update of "cId","pmId"on "coder"for each rowdeclareintegrity_error exception;errno integer;errmsg char(200);dummy integer;found boolean;seq NUMBER;beginseq := IntegrityPackage.GetNestLevel;-- Errors handlingexceptionwhen integrity_error thenraise_application_error(errno, errmsg);end;/create trigger "tib_coder" before inserton "coder"for each rowdeclareintegrity_error exception;errno integer;errmsg char(200);dummy integer;found boolean;begin-- Column ""cId"" uses sequence coder_seqselect coder_seq.NEXTVAL INTO :new."cId"from dual;-- Errors handlingexceptionwhen integrity_error thenraise_application_error(errno, errmsg);end;/create trigger "CompoundInsertTrigger_coder" before insert on "coder"for each rowdeclareintegrity_error exception;errno integer;errmsg char(200);dummy integer;found boolean;begin-- Column ""cId"" uses sequence coder_seqselect coder_seq.NEXTVAL INTO :new."cId"from dual;-- Errors handlingexceptionwhen integrity_error thenraise_application_error(errno, errmsg);end;/接着就是反转的过程:命名模型,然后选择要反转的数据库版本:点击Using a data source,然后点击右侧数据库⼩图标:接着点configure(配置数据源):点击Add Data Source:选择系统数据源:接着选Oracle in OraDb10g_home1(其实这⼀步是⾃动检测你的数据库版本,所以只有⼀个10g)点完成:接着需要填:如果忘记了,可以登⼀下数据库:完善数据源和服务信息、⽤户id:数据源名⾃⼰起、TNS Service Name会⾃动匹配出服务名选择即可(就是数据库名),scott是⽤户名。
PowerDesigner的使用1.用PowerDesigner建表(图 1-1)A.安装好Power Designer软件,并打开如图1-1.(图 1-2)B.右键Workspace --->New --->Physical Data Model 会跳出如上图 1-2 的框点击确定后界面会变成如图 1-3 所示。
(图1-3)C.单击选中右上方Palette框中的table图案(鼠标移到图案上就会有提示),然后在空白处单击就会出现一个table样子的小框如图 1-4 所示.(图 1-4)D.右键图1-4 ,然后单击Columns,会弹出图1-5的框.在这里填写一些表的字段等信息,填好后点击应用,再点确定按钮则表就会变成如图1-6的样子(图1-6)(图1-5)E.当你两张表有外健关联时,可以用Palette框中的Reference图案表示,具体请看图所示,比如还有一张表Table_2,如图1-7.(图1-7)F.假如table_2中的班级编号是table_1中编号的外键,则可以选中Reference图案,单击table_1,并拖动鼠标到table_2,并双击出现的虚线,弹出一个框,如图1-8所示,根据两张表的关系,填入相应的值,单击应用和确定(图1-8)2.与数据库连接,将数据库中的表导入PowerDesignerA.要想将数据库中的表导入PowerDesigner首先得连接数据库,连接数据库的操作如下。
B.单击菜单栏上的File ---> Reverse Engineer --> Database 弹出如图2-1的框。
(图2-1)C.在图2-1中的DBMS栏中选择你用的数据库(我用的是oracle,选ORACLE Veision 10g)点击确定,弹出如图2-2的框,选中Using a data source ,并单击文本框右边的数据库图标,弹出图2-3的框.(图2-2)(图2-3)D.单击Configure...,弹出图2-4 的框.(图2-4)E.单击图2-4中的数据库图标,弹出图2-5的框.选中用户数据源,单击下一步.(图2-5)F.弹出图2-6的框,选中Microsoft ODBC for Oracle 单击下一步.(图2-6)G.弹出图2-7的框,单击完成。
使用步骤:1.新建Conceptual Data Model文件,概念数据模型(CDM)。
2.工具(tool)里面生成…功能的第二项,或者ctrl+G生成物理数据模型(PDM文件后缀,我们常见的表的型式)。
3./数据库/生成数据库,或者ctrl+G生成sql脚本。
过程1中的技巧:a.同一个字段不能重复的写,如果要重复的使用该字段,该字段在拥有这个字段的表中应该是主键,其他要拥有该字段的表可以与该表建立多对一的关系,如此生成PDM后,该字段会自动的作为外键添加到需要的表中。
b.如果一个实体(表)没有一个自己的主键(作为其主键的是外键),则该实体应该写为“联合连接”(多对多关系)。
c.“关系”默认为一对多关系,在画一个关系的时候,出发点为一方,终点为多方。
d.设不了主键的原因:如果一个字段在多个表中出现则设不了,请删除在他表中多余重复的同名字段。
e.即使删除了表,曾经保存实体或关系时产生的字段仍然会存在,以便于在另外的地方引用时输入字段名,保存即可看到该字段已经设定好类型了,因此应该事先计划好字段(可以打开浏览器Data Items,找到并删除之)。
f.过程2中常见的报错:a.注意PDM生成选项中,DBMS请选择对应的类型,如选择Microsoft SQL Server 2000,否则生成的脚本出错,运行不了;注意不要点击下拉框右边的改变文件夹路径的设置,若改了请改回,否则会找不到选项。
b.Undefined data type 为未定义数据类型错误。
c.Existence of identifiers “实体”没有自己的主键,却有一个或多个外键,若与多个外键连接则该“实体”应该为“关系”,否则该有主键的主键。
d.原先和有主键的表建立了关系后,删除了关系而没有及时的删除主键表中的[标识符]信息(主键表的最末行有identifier_1 <pi>)e.Existence of referencef.Existence of relationship 与外界没有关系。
PowerDesigner 使用方法简介一、从网上下载软件。
路径为:计算机系\软件工程与项目管理(CMM)\工具二、安装软件三、软件使用过程根据下述过程建立如图所示的E-R图。
1、点击PowerDesigner图标启动软件。
进入到初始页面,如图2所示2、点击菜单中的文件项,选择新建,出现要求选择建立何种模型的模型类型对话框。
其中Conceptual Data Model CDM,为概念(数据)模型,它建立的就是E-R图Business Process Model BPM,业务处理模型Object-Oriented Model OOM,面向对象模型Physical Data Model PDM,物理(数据)模型,它建立的就是数据库表选择CDM并单击确认按钮。
3、进入PowerDesigner的CDM操作窗口4、界面上出现一个小工具条palette,里面包括常用的数据库建模工具。
用鼠标单击工具条中的工具后,到界面中央单击或拖动即可。
为了能够完成前述图1的内容,选中图标,在界面中间单击五次,形成如图所示画面。
此时,每一个实体都是空的。
需要逐个进行定义和描述。
5、定义实体双击其中的一个实体,弹出实体属性定义对话框。
对“General”选项卡上的内容进行定义。
Name :定义实体的显示名称(图书)Code :定义实体的代码中表示名称(book),必须是英文。
Number :实体中实例(记录)的最大个数(100000000,它表示图书馆的最大藏书量可达一亿册)。
这个数字的作用是便于估计数据库服务器的磁盘容量。
6、定义属性、属性的约束和算法“Attribute”选项卡上定义属性,如图所示每一行定义一个属性,包括属性描述(名称,name)、属性代码(code)、数据类型(type)、使用域(domain)、是否可空(强制,M)、是否为主键(P)、是否显示在模型中(D)。
属性描述在概念模型中进行显示,转换成物理模型后将被忽略,转而显示属性代码。
需求模型基础(Requirement model basics)Requirements Model(RQM)是一种文档式模型,它通过准确恰当地列出,解释开发过程程中需要实现的功能行为来描述待开发项目。
你可以为开发过程中需要使用到的各种结构化技术文档(功能或技术规格说明书,测试计划)而使用Requirements ModelRequirements Model以下面两种视图呈现(而不是以图表形式):需求文档视图对一系列公共属性进行编号可编辑行矩阵单元格代表了当前需求与设计对象,外部文件或其它需求的联系(对划)1. Properties(属性设置) 对对象进行设置2. 插入一个对象3. 插入一个子对象4. Promote5. Remote这俩进行对象的父子关系的调节6. 用户自定义显示列名左侧导航栏显示各个对象,可以进行新增及修改删除等操作定义Users和GroupsUsers(用户)指在一个需求模型中至少和一个已定义需求有关的人的集合。
Groups(组)指专属于开发进程中一个或多个方面的用户类别。
每个用户组要与需求模型中至少一个已定义需求有关。
建立Business rules(业务规则)业务规则是对为满足业务需求,模型应包括的特定内容或关于如何构建模型方面的描述清单。
在Requirement Model状态下,PowerDesigner默认Business为不可用状态,为此我们需要新建Extended model definition来激活Business rules生成模型报告文档生成ReportPowerDesigner提供对Report的操作有关于Report Template Editor(报告模版编辑器),Report Template(报告模版),Report Editor(报告编辑器),Multi-Model report editor(多模型报告编辑器),Report Language Editor(报告语言编辑器)1.使用Report Template Editor(报告模版编辑器)打开报告模版编辑器Tools->Resource->Report Templates,打开List of Report template(报告模版列表),显示当前系统中存在的报告模版,如下图所示在Type下拉列表中选择相应的模版类型,可用模版中会显示对应选择的模版,同时也可以通过单击模版列表工具栏上的new来新建需要的模版选择相应的模版(双击),进入相应模版属性编辑器。