<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

     

    主站蜘蛛池模板: 亚洲国产精品成人综合色在线婷婷 | 国产国拍亚洲精品福利| 亚洲欧美日韩一区二区三区| 国产一卡二卡四卡免费| 亚洲成人一级电影| 国产日本一线在线观看免费| 亚洲国色天香视频| 四虎永久在线精品免费网址| 亚洲最大的成人网| 日本特黄a级高清免费大片| 特级毛片全部免费播放a一级| 亚洲AV无码乱码在线观看| 一道本在线免费视频| 亚洲国产三级在线观看| 91精品手机国产免费| 亚洲一级毛片中文字幕| 免费无码黄动漫在线观看| 成人在线免费视频| 亚洲精品午夜无码电影网| 99re在线视频免费观看| 亚洲中文久久精品无码1| 妞干网免费观看视频| 一进一出60分钟免费视频| 五月天网站亚洲小说| 毛片在线看免费版| 特色特黄a毛片高清免费观看| 亚洲Av综合色区无码专区桃色 | 免费黄色网址入口| 一区二区免费在线观看| 亚洲AV日韩AV天堂久久| 免费无码肉片在线观看| 青娱乐在线免费观看视频| 亚洲精品无码午夜福利中文字幕| 最近2018中文字幕免费视频| 亚洲欧美日韩一区二区三区在线| 亚洲人成77777在线播放网站| 99re视频精品全部免费| 国产偷国产偷亚洲高清在线| 久久久久久久久亚洲| 影音先锋在线免费观看| 男人天堂免费视频|