<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ice world

    There is nothing too difficult if you put your heart into it.
    posts - 104, comments - 103, trackbacks - 0, articles - 0

    PowerDesigner中一些有用的設置

    Posted on 2011-04-23 15:24 IceWee 閱讀(901) 評論(0)  編輯  收藏 所屬分類: Database

    最近使用PD比較頻繁,也被PD給搞的焦頭爛額,網上好的東西還是比較多的,摘了點留作備用。

     

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

    打開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就可以!
    ----------------------------------------------------------------------------------------------------------------------------------

    在修改name的時候,code的值將跟著變動,很不方便

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

    由pdm生成建表腳本時,字段超過15字符就發生錯誤(oracle)

    原因未知,解決辦法是打開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”把把這個資源文件拷貝到模型中。
    ----------------------------------------------------------------------------------------------------------------------------------

    修改外鍵命名規則

    選擇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鉤選項即可。

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

    建立一個表后,為何檢測出現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 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里可以設置標題信息
    ----------------------------------------------------------------------------------------------------------------------------------

     
    批量根據對象的name生成comment的腳本

    執行方法: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 NothingThen
    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

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

    逆向工程將數據庫中comment腳本賦值到PDM的name

    執行方法: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 NothingThen
    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
    if len(tab.comment) <> 0 then
    tab.name 
    = tab.comment
    end if
    On Error Resume Next
    Dim col 'running column
    for each col in tab.columns
    if len(col.comment) <>0 then
    col.name 
    =col.comment
    end if
    On Error Resume Next
    next
    end if
    next
    end sub

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

    刪除概念模型中沒用的Data Items

    '*****************************************************************************
    '
    文件:Delete useless data items.vbs
    '
    版本:1.0
    '
    版權:floodzhu (floodzhu@hotmail.com),2005.1.6
    '
    功能:遍歷概念模型,把無用的Data Items刪除。
    '
    *****************************************************************************
    dim index
    index 
    = 0

    dim model 'current model
    set model = ActiveModel


    If (model Is NothingThen
       
    MsgBox "當前沒有活動的模型。"
    ElseIf Not model.IsKindOf(PdCDM.cls_Model) Then
       
    MsgBox "當前模型不是概念模型。"
    Else
       View model
       
    MsgBox index & "個無用字段被刪除。"
    End If

    '*****************************************************************************
    '
    函數:View
    '
    功能:遞歸遍歷
    '
    *****************************************************************************
    sub View(folder)
       
    dim item
       
    for each item in folder.DataItems
          
    if not item.IsShortCut then
             Visit item
          
    end if
       
    next
      
       
    '對子目錄進行遞歸
       dim subFolder
       
    for each subFolder in folder.Packages
          View subFolder
       
    next
    end sub

    '*****************************************************************************
    '
    函數:Visit
    '
    功能:處理節點
    '
    *****************************************************************************
    sub Visit(node)
     
    if node.UsedBy="" then
          node.delete
          index 
    = index + 1
       
    end if
    end sub

     

    主站蜘蛛池模板: 久久免费观看国产99精品| 日韩大片在线永久免费观看网站| 一区二区三区免费视频网站| 无码乱肉视频免费大全合集| 亚洲人成电影在线天堂| 99re6在线精品视频免费播放| 亚洲小说区图片区另类春色| 大地影院MV在线观看视频免费| 国产AV无码专区亚洲AV男同| 日本免费电影一区二区| 亚洲国产美女福利直播秀一区二区| 国产h视频在线观看网站免费| 亚洲av成人综合网| 麻豆精品国产免费观看| 美女视频黄.免费网址| 国产亚洲成人久久| 99爱在线精品视频免费观看9| 亚洲熟妇无码久久精品| 日韩毛片免费在线观看| 色婷婷综合缴情综免费观看| 亚洲色精品88色婷婷七月丁香| 91在线手机精品免费观看| 亚洲日韩AV一区二区三区中文| 亚洲国产成人久久综合一区77 | 久久久无码精品亚洲日韩软件| 又粗又长又爽又长黄免费视频| 亚洲成A∨人片在线观看不卡| 蜜臀AV免费一区二区三区| 亚洲中文字幕无码av| 久久久无码精品亚洲日韩软件| 91麻豆国产免费观看| 亚洲a∨无码一区二区| 亚洲日韩精品无码一区二区三区| 最近2019中文字幕免费大全5| 亚洲av无码av在线播放| 亚洲成A人片在线观看无码不卡| 人妻视频一区二区三区免费| 一区在线免费观看| 亚洲一区二区三区久久| 亚洲视频一区二区| 成人看的午夜免费毛片|