`
xdw1626
  • 浏览: 171245 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PowerDesigner 11 相关错误问题

阅读更多

版本:11
一。通过调整以下两个参数,
   菜单:Database=>Edit current DBMS
PGSQL73::Script\Objects\MaxConstLen
value=>255

PGSQL73::Script\Objects\Table\Maxlen
value=>255

可以避免在生成sql时的错误:

Reference constraint name maximum length is limited to 7 characters
Key constraint name maximum length is limited to 7 characters
Table code maximum length

这个问题很有普遍性,公司三四个同事都遇到,因没有做笔记,而且这个设置比较隐蔽,很快就忘记,所以每次都花了好长时间才找回设置的地方,为此,做下笔记,并特意把错误提示信息也写上,方便搜索。

二。生成数据库脚本
1.改变目标数据库
菜单:Database=>Change current DBMS
2.生成脚本
菜单:Generate database

 

不用那么麻烦,而且治标不治本,look this:
解决方法一,取消检查
解决方法二,设置相应代码页
以上方法测试验证通过.

二、
留着有用PowerDesigner 11 使用心得(转)

1、安装PD v11.0版

2、由pdm生成建表脚本时,字段超过15字符就发生错误(oracle)
原因未知,解决办法是打开PDM后,会出现Database的菜单栏,进入Database - Edit Current DBMS -script-objects-column-maxlen,把value值调大(原为30),比如改成60。出现表或者其它对象的长度也有这种错误的话都可以选择对应的objects照此种方法更改!
或者使用下面的这种方法:
生成建表脚本时会弹出Database generation提示框:把options - check model的小勾给去掉,就是不进行检查(不推荐)!
或者可以修改C:Program FilesSybasePowerDesigner Trial 11Resource FilesDBMSoracl9i2.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 FilesSybasePowerDesigner Trial 11Resource FilesReport LanguagesChinese.xrl
Tools-Resources-Report Languages-选择Chinese-单击Properties或双击目标
修改某些对象的名称:Object AttributesPhysical Data ModelColumn
ForeignKey:外键
Mandatory:为空
Primary:主键
Table:表
用查找替换,把“表格”替换成“表”
修改显示的内容为别的:Values MappingListsStandard,添加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在创建脚本时自动给表名和字段名加上双引号,以“强字符串”形式来获取区分大小写,这样给sql语句的编写制造很多麻烦。去掉这个添足的功能:
Database -〉Edit Current DBMS -〉Script -〉Sql -〉Format -〉CaseSensitivityUsingQuote
右边面板参数值 Value 选择No

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

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

9。使数据模型图上显示中文:Tools-Model Options-Naming Convertion,在右侧Display处选择Name

=======================================================================

1、修改建表脚本生成规则。如果每个表格都有相同的字段,可以如下修改:
Database -> Edit Current DBMS 展开 Script -> Object -> Table -> Create 见右下的Value值,可以直接修改如下:

/* tablename: %TNAME% */
create table [%QUALIFIER%]%TABLE% (
   %TABLDEFN%
   ts                   char(19)             null default convert(char(19),getdate(),20),
   dr                   smallint             null default 0
)
[%OPTIONS%]

其中的 ts、dr 两列会在生成SQL脚本的时候自动的插入每个表格中,其中的%TNAME% 变量是给每个表格的SQL添加一个该表的Name值注释。

2、修改字段生成规则。要给每个字段都添加一个注释的话,同一窗口中展开 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值(可以是中文)

3、修改外键命名规则。选择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钩选项即可。

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

要生成建库脚本即Databse -> Generate Database (Ctrl+G)窗口中确定即可。

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

分享到:
评论

相关推荐

    powerdesigner11简体中文教程

    同时也有不少网友发来Email询问相关PowerDesigner问题或索要相关资料的,故下定决心制作本文档。折腾二十多天,终于输出了现在的文档,其中绝大部分内容都是依照PowerDesigner自带的帮助文档翻译过来,乐意啃英文的...

    PowerDesigner教程

    同时也有不少网友发来Email询问相关PowerDesigner问题或索要相关资料的,故下定决心制作本文档。折腾二十多天,终于输出了现在的文档,其中绝大部分内容都是依照PowerDesigner自带的帮助文档翻译过来,乐意啃英文的...

    经典PowerDesigner 数据库设计教程 完整版

    同时也有不少网友发来Email询问相关PowerDesigner问题或索要相关资料的,故下定决心制作本文档。折腾二十多天,终于输出了现在的文档,其中绝大部分内容都是依照PowerDesigner自带的帮助文档翻译过来,乐意啃英文的...

    PowerDesigner12.5破解补丁

    PowerDesigner12.5破解补丁,使用说明见压缩包内说明文档。

    数据库设计(利用数据库设计工具PowerDesigner )

    利用PowerDesigner数据库设计软件对ER图...单击“确定”按钮,在Output窗口中将显示处理中的警告、错误及提示信息,生成完成PDM。 四、建立数据库 1.创建数据库 2.定义数据源 3.在PD中连接数据库 4.生成数据库

    powerdesigner连接数据库

    1、powerdesigner连接mysql报错解决方法 错误一:Non SQL Error : Could not load class com.mysql.jdbc.Driver 错误二:Could notInitialize JavaVM 2、powerdesigner连接mysql

    PowerDesigner教程.chm

    版本说明:我使用的是PowerDesigner Trial 11英文版,因此文档中一些菜单,按钮名称也用英文写出(因当心自己译出的名称和中文版上的名称不一致而造成理解不便),若是给使用中文版的朋友带来不便,我在这说声”抱歉...

    更新powerdesigner帮助文件

    有些朋友反映,上次发的powerdesigner帮助文件使用不了,我特意自己下载试了一下,确实有这样的问题,现在我已将原文件打包,再发一次,希望不会再有类似问题发生. 文件错误非本人原因造成,但是毕竟上传后我自己没有经过...

    PowerDesigner 小技巧

    调色板(Palette)快捷工具栏不见了;如何把NAME 列在 scrip里显示出来;自增长列的设置;设置CDM生成PDM时的错误检查;禁止根据name自动输入code等

    PowerDesigner设计数据库使用规范.docx

    进行ER设计的准备工作 2.1 实体命名不相同检查 PowerDesigner 默认不能存在相同名称的实体属性,这也是考虑到可能产生的一些如主键外键等名称冲突问题,但当进行实际数据库设计时,可能会多次使用相同数据项(Data...

    PowerDesigner一些小技巧

    PowerDesigner一些小技巧 2、由pdm生成建表脚本时,字段超过15字符就发生错误(oracle) 3、生成的建表脚本中如何把对象的双引号去掉? 4、建立一个表后,为何检测出现Existence of index的警告 5、创建一个表在...

    Power Designer教程完整版pdf

    版本说明:我使用的是PowerDesigner Trial 11英文版,因此文档中一些菜单,按钮名称也用英文写 出(因当心自己译出的名称和中文版上的名称不一致而造成理解不便),若是给使用中文版的朋友带来不便, 我在这说声”...

    PowerDesigner15官方正式版+注册补丁

    真实可用,刚在win7上装的,之前在u盘里面以前可以用的破解注册文件不可以用了,报什么错误:错误提示1: PowerDesigner:pdshell15.exe-无法找到入口 无法定位程序输入点?SExceptionDialog_@@YAHPBDOJPB_WZZ于动态...

    PowerDesigner生成sql Sever数据库的详细步骤图解

    PowerDesigner生成sql Sever数据库的详细步骤图解 包含一些错误分析和解答,十分好用又清晰哦!

    通过PowerDesigner从数据库导出表结构到Word

    本文档详细描述了通过PowerDesigner从Oracle数据库导出表结构到Word的详细步骤,使用模版与不使用模版两种方式,仅供参考,如有错误,请指正!

    PowerDesigner中如何导入SQL Server数据库

    再用PD建表完成后导成SQL脚本然后在SQL Server中运行后生成数据库后,就想到,可不可以将直接将数据库的内容生成PD文档?经过上网查,当然可以的。 要将SQL Server中的数据库导入到PD中,首先需要建立一个数据库的...

    NC(UFIDA)开发错误整理

    内存溢出 javax.swing.JPanel 的 main() 中发生异常 java.lang.ClassNotFoundException和java....powerdesigner设计数据库表的.pdm文件时出现几大问题 NC开发中几大常识 开发一张单据的基本过程,详细步骤说明配插图

    powerdesign 教程

    同时也有不少网友发来Email询问相关PowerDesigner问题或索要相关资料的,故下定决心制作本文档。折腾二十多天,终于输出了现在的文档,其中绝大部分内容都是依照PowerDesigner自带的帮助文档翻译过来,乐意啃英文的...

    关于Unsupported major.minor version 49.0的错误解决办法

    主要介绍了关于Unsupported major.minor version 49.0的错误解决办法的相关资料,需要的朋友可以参考下

    UML实验报告(3).doc

    一、实验目的 熟悉软件建模工具PowerDesigner的安装和使用,使用PowerDesigner绘制用例图,熟 悉用例文档的编写,掌握系统需求模型的构造过程;学习使用PowerDesigner绘制类图。 二、实验内容 1. 根据如下场景构造...

Global site tag (gtag.js) - Google Analytics