日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

PowerDesigner使用技巧

發(fā)布時(shí)間:2023/12/2 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PowerDesigner使用技巧 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

PowerDesigner使用MySQL的auto_increment?
  ◇問題描述:?
  PD怎樣能使主鍵id使用MySQL的auto_increment呢?

  ?◇解決方法:?
  ?打開table properties窗口 → columns → 選中id列 → 打開columns properties窗口 → 勾選identity即可?
  ?注意:概念模型沒有此選項(xiàng),物理模型才有

  2、PowerDesigner去掉SQL腳本中的雙引號?
  
?◇問題描述:?
  ?PD生成Oracle數(shù)據(jù)庫建表SQL時(shí),默認(rèn)會給表名和字段名加上雙引號,怎樣能去掉SQL腳本中的雙引號呢?

  ?◇解決方法:?
  ?把Database → Edit Current DBMS → General → Script → Sql → Format → CaseSensitivityUsingQuote設(shè)置為NO即可

  3、PowerDesigner生成SQL語句時(shí)不使用Domain
  
?◇問題描述:?
  ?如果在PD中使用了Domain,生成SQLServer的數(shù)據(jù)庫SQL的腳本中會使用與Domain對應(yīng)的自定義數(shù)據(jù)類型,而不會使用 SQLServer自己的數(shù)據(jù)類型,怎樣能讓PD生成SQL語句時(shí)使用SQLServer自己的數(shù)據(jù)庫類型,而不是Domain對應(yīng)的自定義數(shù)據(jù)類型呢?

  ?◇解決方法:?
  ?把Database → Edit Current DBMS → General → Script → Objects → Domain → Enable設(shè)置為NO即可

  4、PowerDesigner中設(shè)置Entity的默認(rèn)字體?
  
?◇問題描述:?
  ?創(chuàng)建Entity時(shí),如果PD默認(rèn)字體不適合自己的個(gè)人習(xí)慣,每次創(chuàng)建了一個(gè)實(shí)體后都要修改實(shí)體的字體,非常麻煩,是否有只修改一次一勞永逸的方法呢?

  ?◇解決方法:?
  ?Tools → Display Preferences... → Format → Entity → Modity... → Font → 進(jìn)行相應(yīng)修改并保存設(shè)置 → Set As Default

  5、PowerDesigner中設(shè)置Entity自動(dòng)調(diào)整尺寸大小?
  
?◇問題描述:?
  ?當(dāng)給Entity添加了字段或其他修改時(shí),Entiry的顯示尺寸大小不會自動(dòng)調(diào)整,怎樣解決呢?

  ?◇解決方法:?
  ?在Entity上點(diǎn)擊右鍵 → 單擊Format...菜單項(xiàng) → 選擇size標(biāo)簽頁 → 勾選Auto adjust to text即可

?

powerdesiner的自增長列,以前都是生成sql語句后,再在自增長列中添加Identity(1,1).找了好久,終于打到了方法 .

1.??????? 如果dbms是MsSql,則選定表后,database-> edit current dbms-> 出現(xiàn)DBMS properties對話框,選擇General頁,左側(cè)的樹選擇SQL 2000-> Profile-> Column-> Extended Attributes 下面的ExtIdentityIncrement是步進(jìn)值,ExtIdentitySeed是起始值,分別設(shè)定默認(rèn)值,后返回。?
2.????? 在表的屬性對話框里面,選擇Clumns頁,按Ctrl+U,在Idenitity前面打上鉤。如有必要,也可以將?
ExtIdentityIncrement和ExtIdentitySeed也打上勾,這樣在設(shè)定Idenitity時(shí)也可以直接指定起始值和步進(jìn)值了。?
btw:我用的是PD11,剛剛開始學(xué)PD,關(guān)于Identity的設(shè)定也是找了好久。

3.???? 對于ql server ,在表的屬性對話框里面,選擇Clumns頁,按Alt+enter進(jìn)入列的屬性頁面,在右下角勾選Idenitity屬性即可.

? 取消Name和Code關(guān)聯(lián)的設(shè)置?
???? 在設(shè)計(jì)PDM文件的時(shí)候,設(shè)計(jì)一張表,在填寫欄位的時(shí)候,如果我們輸入Name,Code會跟著變化.這個(gè)完全是西方人的習(xí)慣,因?yàn)樗麄兊腘ame和 Code都是E文,所以不會出現(xiàn)什么問題.但是,我們使用的時(shí)候,就會很不習(xí)慣,Name應(yīng)該是中文名字,Code才是資料庫的實(shí)際字段名.
???? 下面記錄修改設(shè)置的步驟:
???????? Step 1:
???????????? 菜單欄找到Tools,點(diǎn)開,找到General Options,點(diǎn)擊?
?
Step 2:打開Dialog將Operating modes中的 Name To Code mirroring 將前面的勾去掉
?
OK!完成


sql語句中表名與字段名前的引號去除:

打開cdm的情況下,進(jìn)入Tools-Model Options-Naming Convention,把Name和Code的標(biāo)簽的Charcter case選項(xiàng)設(shè)置成Uppercase或者Lowercase,只要不是Mixed Case就行!
或者選擇Database->Edit current database->Script->Sql->Format,有一項(xiàng)CaseSensitivityUsingQuote,它的 comment為“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否適用雙引號來規(guī)定標(biāo)識符的大小寫,可以看到右邊的values默認(rèn)值為“YES”,改為“No”即可!
或者在打開pdm的情況下,進(jìn)入Tools-Model Options-Naming Convention,把Name和Code的標(biāo)簽的Charcter case選項(xiàng)設(shè)置成Uppercase就可以!

在修改name的時(shí)候,code的值將跟著變動(dòng),很不方便

修改方法:PowerDesign中的選項(xiàng)菜單里修改,在[Tool]-->[General Options]->[Dialog]->[Operating modes]->[Name to Code mirroring],這里默認(rèn)是讓名稱和代碼同步,將前面的復(fù)選框去掉就行了。

由pdm生成建表腳本時(shí),字段超過15字符就發(fā)生錯(cuò)誤(oracle)

原因未知,解決辦法是打開PDM后,會出現(xiàn)Database的菜單欄,進(jìn)入Database - Edit Current DBMS -script-objects-column-maxlen,把value值調(diào)大(原為30),比如改成60。出現(xiàn)表或者其它對象的長度也有這種錯(cuò)誤的話都可以選擇對應(yīng)的objects照此種方法更改!
或者使用下面的這種方法:
???? 生成建表腳本時(shí)會彈出Database generation提示框:把options - check model的小勾給去掉,就是不進(jìn)行檢查(不推薦)!
??? 或者可以修改C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\DBMS\oracl9i2.xdb文件
???? 修改好后,再cdm轉(zhuǎn)為pdm時(shí),選擇“Copy the DBMS definition in model”把把這個(gè)資源文件拷貝到模型中。

由CDM生成PDM時(shí),自動(dòng)生成的外鍵的重命名

PDM Generation Options->Detail->FK index names默認(rèn)是%REFR%_FK,改為FK_%REFRCODE%,其中%REFRCODE%指的就是CDM中Relationship的code!另外自動(dòng)生成的父字段的規(guī)則是PDM Generation Options->Detail->FK column name template中設(shè)置的,默認(rèn)是%.3:PARENT%_%COLUMN%,可以改為Par%COLUMN%表示是父字段!


建立一個(gè)表后,為何檢測出現(xiàn)Existence of index的警告?
??? A table should contain at least one column, one index, one key, and one reference.
可以不檢查 Existence of index 這項(xiàng),也就沒有這個(gè)警告錯(cuò)誤了!
意思是說沒有給表建立索引,而一個(gè)表一般至少要有一個(gè)索引,這是一個(gè)警告,不用管也沒有關(guān)系!

如何防止一對一的關(guān)系生成兩個(gè)引用(外鍵)?
要定義關(guān)系的支配方向,占支配地位的實(shí)體(有D標(biāo)志)變?yōu)楦副怼?br />在cdm中雙擊一對一關(guān)系->Detail->Dominant role選擇支配關(guān)系

修改報(bào)表模板中一些術(shù)語的定義?
即文件:C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\Report Languages\Chinese.xrl
Tools-Resources-Report Languages-選擇Chinese-單擊Properties或雙擊目標(biāo)
修改某些對象的名稱:Object Attributes\Physical Data Model\Column\
??????? ForeignKey:外鍵
??????? Mandatory:為空
??????? Primary:主鍵
??????? Table:表
用查找替換,把“表格”替換成“表”?
修改顯示的內(nèi)容為別的:Values Mapping\Lists\Standard,添加TRUE的轉(zhuǎn)化列為是,FALSE的轉(zhuǎn)化列為空
另外Report-Title Page里可以設(shè)置標(biāo)題信息

PowerDesigner11中批量根據(jù)對象的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:
'* 執(zhí)行方法:PD11 -- Open PDM -- Tools -- Execute Commands -- Run Script
'******************************************************************************

Option Explicit
ValidationMode = True
InteractiveMode = im_Batch

Dim mdl ' the current model

' get the current active model
Set mdl = ActiveModel
If (mdl Is Nothing) Then
?? MsgBox "There is no current Model"
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
?? MsgBox "The current model is not an Physical Data model."
Else
?? ProcessFolder mdl
End If

' This routine copy name into code for each table, each column and each view
' of the current folder
Private sub ProcessFolder(folder)
?? Dim Tab 'running table
?? for each Tab in folder.tables
????? if not tab.isShortcut then
???????? tab.comment = tab.name
???????? Dim col ' running column
???????? for each col in tab.columns
??????????? col.comment= col.name
???????? next
????? end if
?? next

?? Dim view 'running view
?? for each view in folder.Views
????? if not view.isShortcut then
???????? view.comment = view.name
????? 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
?? Next
end sub

?

PowerDesigner 生成SQL的Existence of refernce錯(cuò)誤問題?
現(xiàn)象:用PowerDesigner生成SQL語句時(shí),提示Existence of refernce錯(cuò)誤。
原因:該表沒有與其他表的關(guān)聯(lián)(如外鍵等),而PowerDesigner需要存在一個(gè)refernce才能生成SQL.
解決方法:
??? 在工具欄空白處右鍵打開Palette面板,選中Link/Extended Dependency 按鈕,然后在提示出錯(cuò)的表上添加到自己的Dependency。
??? 重新生成SQL,你將發(fā)現(xiàn)剛才提示的錯(cuò)誤沒有了,問題解決。
???
利用PowerDesigner批量生成測試數(shù)據(jù)?
主要解決方法:
A:在PowerDesigner 建表
B:然后給每一個(gè)表的字段建立相應(yīng)的摘要文件
步驟如下:
Model->Test Data Profiles配置每一個(gè)字段摘要文件General:輸入Name、Code、
選擇Class(數(shù)字、字符、時(shí)間)類型
選擇Generation Source: Automatic、List、ODBC、File Detail:配置字段相關(guān)信息
所有字段摘要文件配置完成后雙擊該表->選擇字段->Detail->選擇Test Data Parameters 摘要文件如果字段值與其它字段有關(guān)系在: Computed Expression 中輸入計(jì)算列--生成測試數(shù)據(jù):
DataBase->Generation Test Data->
選擇:Genration 類型(Sript、ODBC)
???? Selection(選擇要生成的表)
???? Test Data Genration(Default number of rows 生成記錄行數(shù))

1.使用PD12時(shí)出現(xiàn)以下錯(cuò)誤:

Reference constraint name maximum

length is limited to 30 characters

Key constraint name maximum length

is limited to 30 characters

Table code maximum length

Column code maximum length

……

導(dǎo)致生成建表SQL時(shí)通不過,細(xì)究原因原來是默認(rèn)設(shè)置的問題,改下就可以了。

調(diào)整以下參數(shù):

Database=>Edit current DBMS 數(shù)據(jù)庫類型::Script\Objects\MaxConstLen value=>255

Database=>Edit current DBMS 數(shù)據(jù)庫類型::Script\Objects\Table\Maxlen value=>255

Database=>Edit current DBMS 數(shù)據(jù)庫類型::Script\Objects\Column\Maxlen value=>255

但是要注意的是,表名、列名、主鍵等不要超過30個(gè)字符,否則Oracle不認(rèn)。

2.附:生成數(shù)據(jù)庫腳本

Database=>Generate database

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

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

默認(rèn)生成的SQL語句(表名、字段名等)都帶雙引號,導(dǎo)致用SQLPlus插入Oracle數(shù)據(jù)庫時(shí)表名與表列都帶""號,要解決這個(gè)問題,在數(shù)據(jù)庫中做如下設(shè)置:

Database-> Edit Current DBMS...-> Script-> Sql->

Format-> CaseSensitivityUsingQuote 改為No

3.如何在powerDesigner中給字段賦默認(rèn)值

雙擊表,出現(xiàn)column列表,雙擊要設(shè)置的列的左邊的灰色框,應(yīng)該會彈出新的窗口,然后在新窗口上選擇standard checks ,里面有default的


??????? 我一直用的是Oracle數(shù)據(jù)庫,所以在設(shè)計(jì)CDM的時(shí)候,就沒有選定表主鍵自動(dòng)增長。這是SQL Server和MYSQL才有的方式。Oracle中一般是采用SEQUENCE的方式來處理主鍵增長的問題的。相對寫程序來說,Oracle的處理方式比較復(fù)雜一點(diǎn)。

?????? 打開PDM,選中一張表,雙擊打開表屬性,選擇Columns列,選中主鍵字段,雙擊打開,界面的最下方右下角有一個(gè)Identity,選中這個(gè)之后,生成的表主鍵就是自動(dòng)增長的了。

要一個(gè)表一個(gè)表的手工去修改。這要改到什么時(shí)候啊!

在google上搜索了一下,發(fā)現(xiàn)居然有很多人碰到這個(gè)問題,還有一個(gè)vbs的腳本執(zhí)行一次就解決了。大家可以去搜索一下,腳本名字叫SetIdentity.vbs。

??????? 在PD中執(zhí)行腳本方法也很簡單,Tools——Excecute Commands——Edit/Run Scripts。

另外還有一個(gè)腳本,是用來把字段的name統(tǒng)一設(shè)置為數(shù)據(jù)庫字段的comments字段內(nèi)容的name2comment.vbs代碼。也很好用。(一般name都是中文描述,code就是代碼)

?

本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/yycc2008/archive/2009/05/18/4198230.aspx

?

2、由pdm生成建表腳本時(shí),字段超過15字符就發(fā)生錯(cuò)誤(oracle)?
原因未知,解決辦法是打開PDM后,會出現(xiàn)Database的菜單欄,進(jìn)入Database - Edit Current DBMS -script-objects-column-maxlen,把value值調(diào)大(原為30),比如改成60。出現(xiàn)表或者其它對象的長度也有這種錯(cuò)誤的話都可以選擇對應(yīng)的objects照此種方法更改!?

或者使用下面的這種方法:?
生成建表腳本時(shí)會彈出Database generation提示框:把options - check model的小勾給去掉,就是不進(jìn)行檢查(不推薦)!?
或者可以修改C:Program FilesSybasePowerDesigner Trial 11Resource FilesDBMSoracl9i2.xdb文件?
修改好后,再cdm轉(zhuǎn)為pdm時(shí),選擇“Copy the DBMS definition in model”把把這個(gè)資源文件拷貝到模型中。?

3、生成的建表腳本中如何把對象的雙引號去掉??
打開cdm的情況下,進(jìn)入Tools-Model Options-Naming Convention,把Name和Code的標(biāo)簽的Charcter case選項(xiàng)設(shè)置成Uppercase或者Lowercase,只要不是Mixed Case就行!?
或者選擇Database->Edit current database->Script->Sql->Format,有一項(xiàng)CaseSensitivityUsingQuote,它的comment為“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否適用雙引號來規(guī)定標(biāo)識符的大小寫,可以看到右邊的values默認(rèn)值為“YES”,改為“No”即可!?
或者在打開pdm的情況下,進(jìn)入Tools-Model Options-Naming Convention,把Name和Code的標(biāo)簽的Charcter case選項(xiàng)設(shè)置成Uppercase就可以!?

4、建立一個(gè)表后,為何檢測出現(xiàn)Existence of index的警告?
A table should contain at least one column, one index, one key, and one reference.?
可以不檢查 Existence of index 這項(xiàng),也就沒有這個(gè)警告錯(cuò)誤了!?
意思是說沒有給表建立索引,而一個(gè)表一般至少要有一個(gè)索引,這是一個(gè)警告,不用管也沒有關(guān)系!?

5、創(chuàng)建一個(gè)表在修改字段的時(shí)候,一修改name的內(nèi)容,code也跟著變化,如何讓code不隨著name變化?
Name和Code 的右側(cè)都有一個(gè)按鈕“=”,如果需要不同步的話,把這個(gè)按鈕彈起來就可以了。?
Tools->General Options->Dialog->Name to Code Mirroring (去掉)?

6、由CDM生成PDM時(shí),自動(dòng)生成的外鍵的重命名?
PDM Generation Options->Detail->FK index names默認(rèn)是%REFR%_FK,改為FK_%REFRCODE%,其中%REFRCODE%指的就是CDM中Relationship的code!另外自動(dòng)生成的父字段的規(guī)則是PDM Generation Options->Detail->FK column name template中設(shè)置的,默認(rèn)是%.3:PARENT%_%COLUMN%,可以改為Par%COLUMN%表示是父字段!?

7、如何防止一對一的關(guān)系生成兩個(gè)引用(外鍵)?
要定義關(guān)系的支配方向,占支配地位的實(shí)體(有D標(biāo)志)變?yōu)楦副怼?
在cdm中雙擊一對一關(guān)系->Detail->Dominant role選擇支配關(guān)系?

8、修改報(bào)表模板中一些術(shù)語的定義?
即文件:C:Program FilesSybasePowerDesigner Trial 11Resource FilesReport LanguagesChinese.xrl?
Tools-Resources-Report Languages-選擇Chinese-單擊Properties或雙擊目標(biāo)?
修改某些對象的名稱:Object AttributesPhysical Data ModelColumn?
ForeignKey:外鍵?
Mandatory:為空?
Primary:主鍵?
Table:表?
用查找替換,把“表格”替換成“表”?
修改顯示的內(nèi)容為別的:Values MappingListsStandard,添加TRUE的轉(zhuǎn)化列為是,FALSE的轉(zhuǎn)化列為空?
另外Report-Title Page里可以設(shè)置標(biāo)題信息

轉(zhuǎn)載于:https://www.cnblogs.com/gaomin_blog/archive/2011/11/14/2248463.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的PowerDesigner使用技巧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。