`

PowerDesigner的一些常用设置及技巧(转帖)

阅读更多

http://hi.baidu.com/zhougw03/blog/item/df08da3dfe214bc19f3d6292.html
ASA SQL 用户指南
http://www.ianywhere.com/developer/product_manuals/sqlanywhere/0902/zh/html/dbugzh9/dbugzh9.htm

模型检查中的Existence of reference问题
在tool-> check   model 
当中选中option   标签,然后选中table,接下来展开的东西你就明白了

不是存在重复的名,而是默认情况下你的每个表都要建立索引/关联什么的. 
你可以在powerdesigner当中调整警告级别,不让其检查这个就可以了
http://topic.csdn.net/u/20070703/15/d28fff5c-e726-4695-9bdb-901d2df5e97b.html
create table category (
   ID                   int                  identity(100,1),
   Name                 varchar(31)          null,
   constraint PK_CATEGORY primary key (ID)
)


修改外键命名规则

选择Database—>Edit Current DBMS
选择Scripts-》Objects-》Reference-》ConstName
可以发现右侧的Value为:

FK_%.U8:CHILD%_%.U9:REFR%_%.U8:PARENT%

可见,该命名方法是:'FK_'+8位子表名+9位Reference名+8位父表名,你可以根据这中模式自定义为:

FK_%.U7:CHILD%_RELATIONS_%.U7:PARENT%,

可以使FK名称变为FK_TABLE_2_RELATIONS_TABLE_1
掌握这种方法后就可以按照自己的想法修改了

生成建库脚本SQL文件中的表头注释很讨厌,可以在 Databse -> Generate Database (Ctrl+G)窗口中,选择Options卡片,去掉Usage的Title钩选项即可。

添加外键
Model -> References新建一条外键后,双击进入外键属性,在“Joins”卡片中可以选择子表的外键字段

如何实现Name和code不自动相等
如何实现在CDM中创建Entity时,Name和Code不自动对应

-------------------------------------

如何把NAME 列在 scrip里显示出来

 修改字段生成规则。要给每个字段都添加一个注释的话,同一窗口中展开 Script -> Object -> Column -> Add 的 Value修改为:

%20:COLUMN% [%COMPUTE%?AS (%COMPUTE%):%20:DATATYPE% [%IDENTITY%?%IDENTITY%:[%NULL%][%NOTNULL%]][ default %DEFAULT%]
     [[constraint %CONSTNAME%] check (%CONSTRAINT%)]]/*%COLNNAME%*/

其中的%COLNNAME%就是列的Name值(可以是中文)

---------------------------------------------------------------------------------

POWERdESIGEN  自增长列的设置

PDM里查看表的属性,Columns选项卡,选中整列,查看列属性,点左上方的properties图标(有手形图案的那个),此时打开一个设置窗口,General选项卡里面进行设置.   
在列属性的General标签页里有个Identity复选框,勾上就行了

--------------------------------------
1 如何在PowerDesigner下建索引
2 如何在PowerDesigner 下建自增列
3 如何在PowerDesigner 下检查设计模型

  1 如何在PowerDesigner下建索引
  1 双击表设计图,出来Table Properties,在Tab 页中选择 Indexes

  2 单击新建索引的属性,出现Indexex Properties

  3 增加一个索引包含的字段

  2 如何在PowerDesigner 下建自增列
 2 使用SqlServer 数据库中的下列语句来完成
建表语句中,在要做为自增列的字段中,加上如下
IDENTITY(1,1)
还有可以使用下面语句,重置自增种子
dbcc checkident(ConfigSys,reseed,0);
  3 如何在PowerDesigner 下检查设计模型
  1 在菜单栏中选择 Tools -? Check Model, 如下图

  2 选择要检查的每项设置

  3 确定后,将出来检查结果汇总信息





这段时间,使用PD做数据库模型,感觉很不错,将自已的经验总给一下.还有许多功能我没时间总结,以后有时间,继续补吧
1 如何在PowerDesigner下建索引
2 如何在PowerDesigner 下建自增列
3 如何在PowerDesigner 下检查设计模型

1 如何在PowerDesigner下建索引
1 双击表设计图,出来Table Properties,在Tab 页中选择 Indexes

2 单击新建索引的属性,出现Indexex Properties

3 增加一个索引包含的字段

2 如何在PowerDesigner 下建自增列
2 使用SqlServer 数据库中的下列语句来完成
建表语句中,在要做为自增列的字段中,加上如下
IDENTITY(1,1)
还有可以使用下面语句,重置自增种子
dbcc checkident(ConfigSys,reseed,0);
3 如何在PowerDesigner 下检查设计模型
1 在菜单栏中选择 Tools -? Check Model, 如下图

2 选择要检查的每项设置

3 确定后,将出来检查结果汇总信息


在 powerdesigner 中设置 自增 得索引不用那么麻烦,其实只要在 概念模型 中在 属性中把columns中要自增得字段得类型设置成为 serial 就可以了! 

1。使用PowerDesigner检查数据库设计错误~

PowerDesigner 还可用于快速检测新模型中的数据库设计错误。

检查新的模式:

从 [Tools] 菜单中选择 [Check Model]。

此时,就会出现 [Check Model Parameters] 对话框。可以使用缺省参数。

另外也可以直接在空白处单击右键,选择Check Model...即可,我一般喜欢这样用。

单击 [确定]。

此时,在 [Result List] 中就会显示 [Check Model] 的结果。

2。如何将Conceptual Data Model (CDM)转换成Physical Data Model(PDM)?

即将概念数据模型转换成物理数据模型。

二者的区别是,CDM是纯粹概念上的模型,PDM是和具体的数据库类型相关的,比如SQL Server 2000或者Oracle。生成SQL语句当然也就需要从PDM生成。

在菜单上选择Tools -> Generate Phisical Data Model

最后选择你的数据库类型,即可。

3。使用PowerDesigner生成SQL语句~

可以使用 PowerDesigner 生成一个 SQL 脚本,该脚本用于实施模型的所有组件。然后,使用 SQL 脚本生成一个数据库。

这时候要确保你用的是PDM。

生成 SQL 脚本以新建数据库:

从 [Database] 菜单中选择 [Generate Database]。

此时,就会出现 [Database Generation] 对话框

在 [Directory] 字段中键入 c:Temp,并在 [File Name] 字段中键入 NewDemo.sql。

确保选中了 [ Generation]。

单击 [Database] 选项卡,并确保选中了 [Create Database]。

浏览其它选项卡,以查看控制所生成脚本的许多其它属性的选项。

单击 [确定]。

创建脚本后,就会出现 [Result] 对话框。

4。为什么出现Warning : table Existence of index 表名 ?

说明该表没有建立索引。不过这是一个警告,不是错误,可以不用理会它。

5。如何建立联合主键?

联合主键就是一个表里面有多个主键,比如一份学生选课的表里面,学生ID和课程ID就同时是主键。

在设置Attributes,把2个字段的P那项都勾上,P表示Primary Key主键。

6。如何建立外键Foreign Key?

在PowerDesigner中,通过建立关系Relationship就可以自动建立外键,不需要手动添加。

而建立Relationship有2种办法:可以通过菜单选择Model -> Relationships...,也可以通过在右边的工具栏中拖拽Relationship控件。

7。如何生成数据字典?

通过菜单Report -> Report Wizard...可以生成

注意可以选择Template.因为我是通过PDM生成,所以选择了Standard Physical Template~

1、安装PD v11.0版

2、由生成建表脚本时,字段超过15字符就发生错误()
原因未知,解决办法是打开PDM后,会出现Database的菜单栏,进入Database - Edit Current DBMS -script-objects-column-maxlen,把value值调大(原为30),比如改成60。出现表或者其它对象的长度也有这种错误的话都可以选择对应的objects照此种方法更改!
或者使用下面的这种方法:
生成建表脚本时会弹出Database generation提示框:把options - check model的小勾给去掉,就是不进行检查(不推荐)!
或者可以修改C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\DBMS\oracl9i2.xdb文件
修改好后,再cdm转为pdm时,选择“Copy the DBMS definition in model”把把这个资源文件拷贝到模型中。

3、生成的建表脚本中如何把对象的双引号去掉?
打开cdm的情况下,进入Tools-Model Options-Naming Convention,把Name和Code的标签的Charcter case选项设置成Uppercase或者Lowercase,只要不是Mixed Case就行!
或者选择Database->Edit current database->Script->Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,改为“No”即可!
或者在打开pdm的情况下,进入Tools-Model Options-Naming Convention,把Name和Code的标签的Charcter case选项设置成Uppercase就可以!

4、建立一个表后,为何检测出现Existence of index的警告
A table should contain at least one column, one index, one key, and one reference.
可以不检查 Existence of index 这项,也就没有这个警告错误了!
意思是说没有给表建立索引,而一个表一般至少要有一个索引,这是一个警告,不用管也没有关系!

5、创建一个表在修改字段的时候,一修改name的内容,code也跟着变化,如何让code不随着name变化
Name和Code 的右侧都有一个按钮“=”,如果需要不同步的话,把这个按钮弹起来就可以了。
Tools->General Options->Dialog->Name to Code Mirroring (去掉)

6、由CDM生成PDM时,自动生成的外键的重命名
PDM Generation Options->Detail->FK index names默认是%REFR%_FK,改为FK_%REFRCODE%,其中%REFRCODE%指的就是CDM中Relationship的code!另外自动生成的父字段的规则是PDM Generation Options->Detail->FK column name template中设置的,默认是%.3:PARENT%_%COLUMN%,可以改为Par%COLUMN%表示是父字段!

7、如何防止一对一的关系生成两个引用(外键)
要定义关系的支配方向,占支配地位的实体(有D标志)变为父表。
在cdm中双击一对一关系->Detail->Dominant role选择支配关系

8、修改报表模板中一些术语的定义
即文件:C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\Report Languages\Chinese.xrl
Tools-Resources-Report Languages-选择Chinese-单击Properties或双击目标
修改某些对象的名称:Object Attributes\Physical Data Model\Column\
        ForeignKey:外键
        Mandatory:为空
        Primary:主键
        Table:表
用查找替换,把“表格”替换成“表”
修改显示的内容为别的:Values Mapping\Lists\Standard,添加TRUE的转化列为是,FALSE的转化列为空
另外Report-Title Page里可以设置标题信息

1。pd中复制一列是,实际上是一个链接。源列的变动同时体现在复制列上

2。数据库设计通常步骤:CDM缺定主要结构--》生成PDM--》在PDM上修改,必要时生成CDM

3。若由pdm生成cdm再生成pdm,在pdm中修改过的外键名将被改回到默认值

4。必要时可以通过修改模板(Database-Edit Current DataBase)改变脚本的格式。例如:
Script-Objects-Column-Add的Value中开头增加一行“--%COLNNAME%”以便在脚本中显示列的中英文对照

5。去掉讨厌的name、code映射:Tools-General Options-clear the Name to Code mirroring check box

6。对于大小写不敏感的数据库(如Oracle),PowerDesign在创建脚本时自动给表名和字段名加上双引号,以“强字符串”形式来获取区分大小写,这样给语句的编写制造很多麻烦。去掉这个添足的功能:
Database -〉Edit Current DBMS -〉Script. -〉Sql -〉Format -〉CaseSensitivityUsingQuote
右边面板参数值 Value 选择No

7。由cdm生成pdm,可以控制是否将关系生成引用;由pdm生成脚本,可以控制是否将引用生成外键

8。对于oracle而言,为表设置选项(如tablespace GPSSYSTEM)可使其创建到正确的表空间;为主键设置选项(using index tablespace GPSINDEX)使索引创建到正确的表空间中

 

1。使用PowerDesigner检查数据库设计错误~

PowerDesigner 还可用于快速检测新模型中的数据库设计错误。

检查新的模式:

从 [Tools] 菜单中选择 [Check Model]。

此时,就会出现 [Check Model Parameters] 对话框。可以使用缺省参数。

另外也可以直接在空白处单击右键,选择Check Model...即可,我一般喜欢这样用。

单击 [确定]。

此时,在 [Result List] 中就会显示 [Check Model] 的结果。

2。如何将Conceptual Data Model (CDM)转换成Physical Data Model(PDM)?

即将概念数据模型转换成物理数据模型。

二者的区别是,CDM是纯粹概念上的模型,PDM是和具体的数据库类型相关的,比如SQL Server 2000或者Oracle。生成SQL语句当然也就需要从PDM生成。

在菜单上选择Tools -> Generate Phisical Data Model

最后选择你的数据库类型,即可。

3。使用PowerDesigner生成SQL语句~

可以使用 PowerDesigner 生成一个 SQL 脚本,该脚本用于实施模型的所有组件。然后,使用 SQL 脚本生成一个数据库。

这时候要确保你用的是PDM。

生成 SQL 脚本以新建数据库:

从 [Database] 菜单中选择 [Generate Database]。

此时,就会出现 [Database Generation] 对话框

在 [Directory] 字段中键入 c:Temp,并在 [File Name] 字段中键入 NewDemo.sql。

确保选中了 [ Generation]。

单击 [Database] 选项卡,并确保选中了 [Create Database]。

浏览其它选项卡,以查看控制所生成脚本的许多其它属性的选项。

单击 [确定]。

创建脚本后,就会出现 [Result] 对话框。

4。为什么出现Warning : table Existence of index 表名 ?

说明该表没有建立索引。不过这是一个警告,不是错误,可以不用理会它。

5。如何建立联合主键?

联合主键就是一个表里面有多个主键,比如一份学生选课的表里面,学生ID和课程ID就同时是主键。

在设置Attributes,把2个字段的P那项都勾上,P表示Primary Key主键。

6。如何建立外键Foreign Key?

在PowerDesigner中,通过建立关系Relationship就可以自动建立外键,不需要手动添加。

而建立Relationship有2种办法:可以通过菜单选择Model -> Relationships...,也可以通过在右边的工具栏中拖拽Relationship控件。

7。如何生成数据字典?

通过菜单Report -> Report Wizard...可以生成

注意可以选择Template.因为我是通过PDM生成,所以选择了Standard Physical Template~

1、安装PD v11.0版

2、由生成建表脚本时,字段超过15字符就发生错误()
原因未知,解决办法是打开PDM后,会出现Database的菜单栏,进入Database - Edit Current DBMS -script-objects-column-maxlen,把value值调大(原为30),比如改成60。出现表或者其它对象的长度也有这种错误的话都可以选择对应的objects照此种方法更改!
或者使用下面的这种方法:
生成建表脚本时会弹出Database generation提示框:把options - check model的小勾给去掉,就是不进行检查(不推荐)!
或者可以修改C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\DBMS\oracl9i2.xdb文件
修改好后,再cdm转为pdm时,选择“Copy the DBMS definition in model”把把这个资源文件拷贝到模型中。

3、生成的建表脚本中如何把对象的双引号去掉?
打开cdm的情况下,进入Tools-Model Options-Naming Convention,把Name和Code的标签的Charcter case选项设置成Uppercase或者Lowercase,只要不是Mixed Case就行!
或者选择Database->Edit current database->Script->Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,改为“No”即可!
或者在打开pdm的情况下,进入Tools-Model Options-Naming Convention,把Name和Code的标签的Charcter case选项设置成Uppercase就可以!

4、建立一个表后,为何检测出现Existence of index的警告
A table should contain at least one column, one index, one key, and one reference.
可以不检查 Existence of index 这项,也就没有这个警告错误了!
意思是说没有给表建立索引,而一个表一般至少要有一个索引,这是一个警告,不用管也没有关系!

5、创建一个表在修改字段的时候,一修改name的内容,code也跟着变化,如何让code不随着name变化
Name和Code 的右侧都有一个按钮“=”,如果需要不同步的话,把这个按钮弹起来就可以了。
Tools->General Options->Dialog->Name to Code Mirroring (去掉)

6、由CDM生成PDM时,自动生成的外键的重命名
PDM Generation Options->Detail->FK index names默认是%REFR%_FK,改为FK_%REFRCODE%,其中%REFRCODE%指的就是CDM中Relationship的code!另外自动生成的父字段的规则是PDM Generation Options->Detail->FK column name template中设置的,默认是%.3:PARENT%_%COLUMN%,可以改为Par%COLUMN%表示是父字段!

7、如何防止一对一的关系生成两个引用(外键)
要定义关系的支配方向,占支配地位的实体(有D标志)变为父表。
在cdm中双击一对一关系->Detail->Dominant role选择支配关系

8、修改报表模板中一些术语的定义
即文件:C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\Report Languages\Chinese.xrl
Tools-Resources-Report Languages-选择Chinese-单击Properties或双击目标
修改某些对象的名称:Object Attributes\Physical Data Model\Column\
        ForeignKey:外键
        Mandatory:为空
        Primary:主键
        Table:表
用查找替换,把“表格”替换成“表”
修改显示的内容为别的:Values Mapping\Lists\Standard,添加TRUE的转化列为是,FALSE的转化列为空
另外Report-Title Page里可以设置标题信息

1。pd中复制一列是,实际上是一个链接。源列的变动同时体现在复制列上

2。数据库设计通常步骤:CDM缺定主要结构--》生成PDM--》在PDM上修改,必要时生成CDM

3。若由pdm生成cdm再生成pdm,在pdm中修改过的外键名将被改回到默认值

4。必要时可以通过修改模板(Database-Edit Current DataBase)改变脚本的格式。例如:
Script-Objects-Column-Add的Value中开头增加一行“--%COLNNAME%”以便在脚本中显示列的中英文对照

5。去掉讨厌的name、code映射:Tools-General Options-clear the Name to Code mirroring check box

6。对于大小写不敏感的数据库(如Oracle),PowerDesign在创建脚本时自动给表名和字段名加上双引号,以“强字符串”形式来获取区分大小写,这样给语句的编写制造很多麻烦。去掉这个添足的功能:
Database -〉Edit Current DBMS -〉Script. -〉Sql -〉Format -〉CaseSensitivityUsingQuote
右边面板参数值 Value 选择No

7。由cdm生成pdm,可以控制是否将关系生成引用;由pdm生成脚本,可以控制是否将引用生成外键

8。对于oracle而言,为表设置选项(如tablespace GPSSYSTEM)可使其创建到正确的表空间;为主键设置选项(using index tablespace GPSINDEX)使索引创建到正确的表空间中

分享到:
评论

相关推荐

    PowerDesigner 常用设置大全

    ### PowerDesigner 常用设置大全 #### 设置1:取消Name与Code的联动 在进行数据库设计时,可能会遇到Name与Code同步...以上是关于PowerDesigner中一些常用设置的详细介绍,希望能够帮助您更高效地进行数据库建模工作。

    powerDesigner的常用配置及使用技巧 + idea注释模板配置(1).pdf

    ### PowerDesigner常用配置及使用技巧 1. **创建工作空间和物理数据模型** - 在PowerDesigner中,首先需要创建一个工作空间,之后在此工作空间中创建物理数据模型,以便开始数据库设计。 2. **创建和配置数据库表...

    PowerDesigner 的常用报告样板

    本篇将详细讲解"PowerDesigner的常用报告样板",包括ER图、数据表统计以及各表的表结构。 首先,ER图(实体关系图)是数据库设计的基础,它清晰地展示了实体、关系和属性。在PowerDesigner中,你可以创建自定义的ER...

    PowerDesigner一些使用技巧

    ### PowerDesigner 使用技巧详解 #### 一、找回丢失的工具栏 在使用 PowerDesigner 进行数据库设计时,有时会遇到工具栏意外消失的情况。若工具栏中的“调色板(Palette)”不见,可以通过以下步骤找回: 1. **打开...

    powerdesigner为表设置表空间

    ### PowerDesigner 15 中为 Oracle 表指定表空间的操作指南 #### 一、PowerDesigner 简介 PowerDesigner 是一款由 Sybase 公司(后被 SAP 收购)开发的数据建模工具,广泛应用于数据库设计和管理领域。它提供了...

    PowerDesigner一些小技巧

    以下是一些关于PowerDesigner的小技巧: 1. **字段长度限制问题**: 当在Oracle数据库上生成建表脚本时,若字段长度超过15个字符,会遇到错误。这是因为Oracle默认的限制。解决方法是进入PDM的Database菜单,选择...

    powerdesigner物理数据模型使用技巧

    【PowerDesigner物理数据模型使用技巧】 PowerDesigner是Sybase公司的一款强大的CASE工具,它整合了企业架构分析、UML和数据建模的功能。在物理数据模型(PDM)的使用中,PowerDesigner允许用户创建适应多种DBMS的...

    Sybase PowerDesigner 常用脚本

    标题中的“Sybase PowerDesigner 常用脚本”指的是Sybase PowerDesigner这款强大的数据库建模工具中的自动化脚本。PowerDesigner是企业级的数据建模工具,它允许用户设计复杂的数据库模型,包括物理数据模型(PDM)...

    PowerDesigner12.5入门及技巧

    ### PowerDesigner 12.5 入门及技巧详解 #### 一、PowerDesigner 12.5 简介 PowerDesigner 12.5 是一款强大的数据建模工具,广泛应用于数据库设计、概念数据建模、物理数据建模等领域。它不仅支持统一建模语言...

    PowerDesigner使用技巧

    下面将总结 PowerDesigner 的一些常用技巧和设置,帮助读者更好地使用 PowerDesigner。 一、工具栏设置 在 PowerDesigner 中,工具栏的设置非常重要。如果工具栏不见了,可以通过 Tools->Customize->Toolbars->...

    powerdesigner创建oracle_数据库表,设置表主键列为自动增长

    ### PowerDesigner 创建 Oracle 数据库表并设置主键自动增长 #### 一、PowerDesigner与Oracle数据库集成概述 PowerDesigner是一款强大的数据库设计工具,它能够帮助开发者进行数据建模、概念设计以及物理数据库的...

    powerdesigner常用知识小合集

    这个"powerdesigner常用知识小合集"涵盖了多个重要的使用场景,包括数据库设计、数据导入、数据库连接、显示外键名称、中文注释处理以及数据库表导出等。接下来,我们将深入探讨这些知识点。 1. **数据库设计**:...

    PowerDesigner常用快捷键

    ### PowerDesigner常用快捷键详解 #### 一、概述 PowerDesigner 是一款强大的数据建模工具,广泛应用于数据库设计、业务流程分析等领域。掌握其快捷键能够显著提高工作效率,本篇文章将详细介绍PowerDesigner中的...

    powerdesigner导出sql设置注释

    打开powerdesigner工具,点开tools->execute-commands->edit/run script,导入文件

    powerdesigner

    powerdesigner

    PowerDesigner设计技巧

    【PowerDesigner设计技巧】 PowerDesigner是一款强大的数据建模工具,常用于数据库的设计和管理。它提供了从概念模型到物理模型的转换,支持多种数据库管理系统,包括E-R模型的设计。以下是一些关键知识点: 1. **...

    PowerDesigner建模的一些实例

    这些实例对于初学者来说是宝贵的参考资料,能够帮助他们快速掌握PowerDesigner的使用技巧,而对于经验丰富的设计师来说,也是进一步提升工作效率和模型质量的实用工具。通过详细研究和实践这些实例,我们可以更好地...

    PowerDesigner16. 7

    PowerDesigner是一款强大的数据库建模工具,它在IT行业中被广泛应用于数据建模、数据库设计以及系统分析。在标题"PowerDesigner16.7"中提到的版本是该软件的一个特定迭代,16.7版提供了丰富的功能和改进,旨在帮助...

    powerdesigner常用.txt

    powerdesigner 实现sql---》数据模型 数据模型----sql

Global site tag (gtag.js) - Google Analytics