PD生产批量测试数据.doc_第1页
PD生产批量测试数据.doc_第2页
PD生产批量测试数据.doc_第3页
PD生产批量测试数据.doc_第4页
PD生产批量测试数据.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

利用PowerDesigner批量生成测试数据 -主要解决方法: A:在PowerDesigner 建表 B:然后给每一个表的字段建立相应的摘要文件 步骤如下: Model-Test Data Profiles 配置每一个字段摘要文件General:输入Name、Code、 选择Class(数字、字符、时间)类型选择Generation Source: Automatic、List、ODBC、FileDetail:配置字段相关信息 所有字段摘要文件配置完成后双击该表-选择字段-Detail-选择Test Data Parameters 摘要文件如果字段值与其它字段有关系在: Computed Expression 中输入计算列 -生成测试数据:DataBase-Generation Test Data-选择:Genration 类型(Sript、ODBC) Selection(选择要生成的表) Test Data Genration(Default number of rows 生成记录行数)PowerDesign的使用主要是DBMS的配置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、修改外键命名规则。选择DatabaseEdit Current DBMS选择ScriptsObjectsReferenceConstName可以发现右侧的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”卡片中可以选择子表的外键字段5、去掉生成的SQL脚本双引号的问题:ORACLE 8I2:ScriptSqlFormatCaseSensitivityUsingQuote改成No,默认是Yes所以会有双引号。 在修改name的时候,code的值将跟着变动,很不方便。修改方法:PowerDesign中的选项菜单里修改,在Tool- General Options-Dialog-Operating modes-Name to Code mirroring,这里默认是让名称和代码同步,将前面的复选框去掉就行了。 6,去掉reference显示名字tools-desplay preferences-object view-reference-namepowerDesigner使用技巧(转)关键字: powerdesigner 最近用powerDesinger遇到一些小问题,遇到好几次同样的问题了,写在这里,以备查用:-sql语句中表名与字段名前的引号去除:打开cdm的情况下,进入ToolsModel OptionsNaming 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的情况下,进入ToolsModel OptionsNaming Convention,把Name和Code的标签的Charcter case选项设置成Uppercase就可以!在修改name的时候,code的值将跟着变动,很不方便修改方法:PowerDesign中的选项菜单里修改,在Tool-General Options-Dialog-Operating modes-Name to Code mirroring,这里默认是让名称和代码同步,将前面的复选框去掉就行了。由pdm生成建表脚本时,字段超过15字符就发生错误(oracle) 原因未知,解决办法是打开PDM后,会出现Database的菜单栏,进入Database Edit Current DBMS scriptobjectscolumnmaxlen,把value值调大(原为30),比如改成60。出现表或者其它对象的长度也有这种错误的话都可以选择对应的objects照此种方法更改!或者使用下面的这种方法: 生成建表脚本时会弹出Database generation提示框:把options check model的小勾给去掉,就是不进行检查(不推荐)! 或者可以修改C:Program FilesSybasePowerDesigner Trial 11Resource FilesDBMSoracl9i2.xdb文件 修改好后,再cdm转为pdm时,选择“Copy the DBMS definition in model”把把这个资源文件拷贝到模型中。由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%表示是父字段!建立一个表后,为何检测出现Existence of index的警告 A table should contain at least one column, one index, one key, and one reference.可以不检查 Existence of index 这项,也就没有这个警告错误了!意思是说没有给表建立索引,而一个表一般至少要有一个索引,这是一个警告,不用管也没有关系!如何防止一对一的关系生成两个引用(外键)要定义关系的支配方向,占支配地位的实体(有D标志)变为父表。在cdm中双击一对一关系-Detail-Dominant role选择支配关系修改报表模板中一些术语的定义即文件:C:Program FilesSybasePowerDesigner Trial 11Resource FilesReport LanguagesChinese.xrlToolsResourcesReport Languages选择Chinese单击Properties或双击目标修改某些对象的名称:Object AttributesPhysical Data ModelColumn ForeignKey:外键 Mandatory:为空 Primary:主键 Table:表用查找替换,把“表格”替换成“表”修改显示的内容为别的:Values MappingListsStandard,添加TRUE的转化列为是,FALSE的转化列为空另外ReportTitle Page里可以设置标题信息PowerDesigner11中批量根据对象的name生成comment的脚本* File: name2comment.vbs* Purpose: Database generation cannot use object names anymore in version 7 and above. It always uses the object codes. In case the object codes are not aligned with your object names in your model, this script will copy the object Name onto the object comment for the Tables and Columns.* Title: 把对象name拷入comment属性中* Version: 1.0* Author:* 执行方法:PD11 - Open PDM - Tools - Execute Commands - Run Script*Option ExplicitValidationMode = TrueInteractiveMode = im_BatchDim mdl the current model get the current active modelSet mdl = ActiveModelIf (mdl Is Nothing) Then MsgBox There is no current ModelElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then MsgBox The current model is not an Physical Data model.Else ProcessFolder mdlEnd If This routine copy name into code for each table, each column and each view of the current folderPrivate sub ProcessFolder(folder) Dim Tab running table for each Tab in folder.tables if not tab.isShortcut then ment = Dim col running column for each col in tab.columns ment= next end if next Dim view running view for each view in folder.Views if not view.isShortcut then ment = end if next go into the sub-packages Dim f running folder For Each f In folder.Packages if not f.IsShortcut then ProcessFolder f end if Nextend subPowerDesigner 生成SQL的Existence of refernce错误问题现象:用PowerDesigner生成SQL语句时,提示Existence of refernce错误。原因:该表没有与其他表的关联(如外键等),而PowerDesigner需要存在一个refernce才能生成SQL.解决方法: 在工具栏空白处右键打开Palette面板,选中Link/Extended Dependency 按钮,然后在提示出错的表上添加到自己的Dependency。 重新生成SQL,你将发现刚才提示的错误没有了,问题解决。 利用PowerDesigner批量生成测试数据主要解决方法:A:在PowerDesigner 建表B:然后给每一个表的字段建立相应的摘要文件步骤如下:Model-Test Data Profiles配置每一个字段摘要文件General:输入Name、Code、选择Class(数字、字符、时间)类型选择Generation Source: Automatic、List、ODBC、File Detail:配置字段相关信息所有字段摘要文件配置完成后双击该表-选择字段-Detail-选择Test Data Parameters 摘要文件如果字段值与其它字段有关系在: Computed Expression 中输入计算列-生成测试数据:DataBase-Generation Test Data-选择:Genration 类型(Sript、ODBC) Selection(选择要生成的表) Test Data Genration(Default number of rows 生成记录行数)PowerDesigner设置集锦 最近用powerDesinger遇到一些小问题,遇到好几次同样的问题了,写在这里,以备查用:-powerdesiner的自增长列,以前都是生成sql语句后,再在自增长列中添加Identity(1,1).找了好久,终于打到了方法.1.如果dbms是MsSql,则选定表后,database- edit current dbms- 出现DBMS properties对话框,选择General页,左侧的树选择SQL 2000- Profile- Column- Extended Attributes 下面的ExtIdentityIncrement是步进值,ExtIdentitySeed是起始值,分别设定默认值,后返回。 2.在表的属性对话框里面,选择Clumns页,按Ctrl+U,在Idenitity前面打上钩。如有必要,也可以将 ExtIdentityIncrement和ExtIdentitySeed也打上勾,这样在设定Idenitity时也可以直接指定起始值和步进值了。 btw:我用的是PD11,刚刚开始学PD,关于Identity的设定也是找了好久。 3.对于ql server ,在表的属性对话框里面,选择Clumns页,按Alt+enter进入列的属性页面,在右下角勾选Idenitity属性即可.在使用PowerDesigner的过程中,经常遇到一些设置上面的问题,每次都去找老鸟帮忙解决,隔一段时间不用,下一次又忘掉了,不好意思再去麻烦他们了,所以现在用博客园记录下来,以后上园子来找以前的东西.1取消Name和Code关联的设置 在设计PDM文件的时候,设计一张表,在填写栏位的时候,如果我们输入Name,Code会跟着变化.这个完全是西方人的习惯,因为他们的Name和Code都是E文,所以不会出现什么问题.但是,我们使用的时候,就会很不习惯,Name应该是中文名字,Code才是资料库的实际字段名. 下面记录修改设置的步骤: Step 1: 菜单栏找到Tools,点开,找到General Options,点击Step 2:打开Dialog将Operating modes中的 Name To Code mirroring將前面的勾去掉OK!完成 sql语句中表名与字段名前的引号去除:打开cdm的情况下,进入ToolsModel OptionsNaming 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的情况下,进入ToolsModel OptionsNaming Convention,把Name和Code的标签的Charcter case选项设置成Uppercase就可以! 在修改name的时候,code的值将跟着变动,很不方便修改方法:PowerDesign中的选项菜单里修改,在Tool-General Options-Dialog-Operating modes-Name to Code mirroring,这里默认是让名称和代码同步,将前面的复选框去掉就行了。 由pdm生成建表脚本时,字段超过15字符就发生错误(oracle) 原因未知,解决办法是打开PDM后,会出现Database的菜单栏,进入Database Edit Current DBMS scriptobjectscolumnmaxlen,把value值调大(原为30),比如改成60。出现表或者其它对象的长度也有这种错误的话都可以选择对应的objects照此种方法更改!或者使用下面的这种方法: 生成建表脚本时会弹出Database generation提示框:把options check model的小勾给去掉,就是不进行检查(不推荐)! 或者可以修改C:Program FilesSybasePowerDesigner Trial 11Resource FilesDBMSoracl9i2.xdb文件 修改好后,再cdm转为pdm时,选择“Copy the DBMS definition in model”把把这个资源文件拷贝到模型中。 由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%表示是父字段! 建立一个表后,为何检测出现Existence of index的警告 A table should contain at least one column, one index, one key, and one reference.可以不检查 Existence of index 这项,也就没有这个警告错误了!意思是说没有给表建立索引,而一个表一般至少要有一个索引,这是一个警告,不用管也没有关系! 如何防止一对一的关系生成两个引用(外键)要定义关系的支配方向,占支配地位的实体(有D标志)变为父表。在cdm中双击一对一关系-Detail-Dominant role选择支配关系 修改报表模板中一些术语的定义即文件:C:Program FilesSybasePowerDesigner Trial 11Resource FilesReport LanguagesChinese.xrlToolsResourcesReport Languages选择Chinese单击Properties或双击目标修改某些对象的名称:Object AttributesPhysical Data ModelColumn ForeignKey:外键 Mandatory:为空 Primary:主键 Table:表用查找替换,把“表格”替换成“表”修改显示的内容为别的:Values MappingListsStandard,添加TRUE的转化列为是,FALSE的转化列为空另外ReportTitle Page里可以设置标题信息 PowerDesigner11中批量根据对象的name生成comment的脚本* File: name2comment.vbs* Purpose: Database generation cannot use object names anymore in version 7 and above. It always uses the object codes. In case the object codes are not aligned with your object names in your model, this script will copy the object Name onto the object comment for the Tables and Columns.* Title: 把对象name拷入comment属性中* Version: 1.0* Author:* 执行方法:PD11 - Open PDM - Tools - Execute Commands - Run Script*Option ExplicitValidationMode = TrueInteractiveMode = im_BatchDim mdl the current model get the current active modelSet mdl = ActiveModelIf (mdl Is Nothing) Then MsgBox There is no current ModelElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then MsgBox The current model is not an Physical Data model.Else ProcessFolder mdlEnd If This routine copy name into code for each table, each column and each view of the current folderPrivate sub ProcessFolder(folder) Dim Tab running table for each Tab in folder.tables if not tab.isShortcut then ment = Dim col running column for each col in tab.columns ment= next end if next Dim view running view for each view in folder.Views if not view.isShortcut then ment = end if next go into the sub-packages Dim f running folder For Each f In folder.Packages if not f.IsShortcut then ProcessFolder f end if Nextend sub PowerDesigner 生成SQL的Existence of refernce错误问题现象:用PowerDesigner生成SQL语句时,提示Existence of refernce错误。原因:该表没有与其他表的关联(如外键等),而PowerDesigner需要存在一个refernce才能生成SQL.解决方法: 在工具栏空白处右键打开Palette面板,选中Link/Extended Dependency 按钮,然后在提示出错的表上添加到自己的Dependency。 重新生成SQL,你将发现刚才提示的错误没有了,问题解决。 利用PowerDesigner批量生成测试数据主要解决方法:A:在PowerDesigner 建表B:然后给每一个表的字段建立相应的摘要文件步骤如下:Model-Test Data Profiles配置每一个字段摘要文件General:输入Name、Code、选择Class(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论