posts - 297,  comments - 1618,  trackbacks - 0

          設(shè)計(jì)之路:使用Power Designer工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)

          /阿蜜果

          日期:/2013-10-13

                  

                   使用Power Designer進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)已有一段時(shí)間,但某些功能卻一直未曾使用,本博文將筆者近期使用Power Designer的某些功能進(jìn)行詳細(xì)講解。

          1、使用PD連接Oracle數(shù)據(jù)庫(kù)

                   前些天跟進(jìn)一個(gè)已經(jīng)做完一半但是不大的系統(tǒng),使用Oracle 11g數(shù)據(jù)庫(kù),因?yàn)闀r(shí)間比較緊張,而且項(xiàng)目組人員沒有文檔規(guī)范意識(shí),各個(gè)模塊的數(shù)據(jù)庫(kù)表都由各個(gè)開發(fā)人員獨(dú)立設(shè)計(jì),沒有完整的物理模型設(shè)計(jì)文檔,給維護(hù)造成很大困難。

                   因?yàn)橹挥?/span>Oracle數(shù)據(jù)庫(kù)中有表結(jié)構(gòu),所以我想通過Oracle數(shù)據(jù)庫(kù)反向生成物理模型,首先需要使用Power Designer連Oracle數(shù)據(jù)庫(kù)。

          1.1 創(chuàng)建新的物理數(shù)據(jù)模型

                   點(diǎn)擊“文件”-> “建立新模型”,在彈出的界面中使用默認(rèn)選擇(“Model-> Physical Data Model-> Physical Diagram”),修改“Model Name”為系統(tǒng)的名稱,“DBMS”選擇“ORACLE Version 11g”,點(diǎn)擊“OK”按鈕建立新的物理數(shù)據(jù)模型。如下圖所示:  
               

                   【說明】筆者使用的Power Designer版本為15.1,鏈接的Oracle版本為Oracle 11g。

          1.2 創(chuàng)建Oralce數(shù)據(jù)源

                   點(diǎn)擊“數(shù)據(jù)庫(kù)”-> Configure Data Connections”,在彈出的界面中選擇“Connect Profiles”后點(diǎn)擊“ ”按鈕將彈出創(chuàng)建數(shù)據(jù)源的界面,如下圖所示:        
                

                   在“Connection Profile Connection Definition”界面的設(shè)置參考如下:
                 

                   該界面設(shè)置需要注意的是:

            (1Connection Profile name:輸入數(shù)據(jù)庫(kù)連接文件名它會(huì)自動(dòng)加上后綴.dcp

                   2Derectory:可以選擇任意目錄;

                   3Connection type:連接類型選擇“JDBC”;

                   4DBMS type:數(shù)據(jù)庫(kù)管理系統(tǒng)選擇“Oracle”;

                   5User name:數(shù)據(jù)庫(kù)用戶名;

                   6Password:數(shù)據(jù)庫(kù)密碼;

                   7JDBC driver class:從下拉中選擇JDBC的驅(qū)動(dòng)類選擇驅(qū)動(dòng)類oracle.jdbc.OracleDriver;

                   8JDBC connection URLJDBC連接地址,即訪問的服務(wù)器路徑,格式為:

                             jdbc:oracle:thin:@數(shù)據(jù)庫(kù)IP地址數(shù)據(jù)庫(kù)連接端口:orcl

                   9JDBC driver jar files:需要選擇指向ojdbc14.jar或者其他驅(qū)動(dòng)的包的按鈕路徑。

                   筆者測(cè)試過程中發(fā)現(xiàn)數(shù)據(jù)庫(kù)連接不上,后來才發(fā)現(xiàn)因?yàn)樾聯(lián)Q筆記本后連JDK都未安裝,請(qǐng)確認(rèn)JDK安裝成功,并正確設(shè)置JAVA_HOME、CLASSPATHPATH環(huán)境變量。

          Power Designer找不到所選擇的jar包或jar包不在CLASSPATH環(huán)境變量所指定的路徑,將會(huì)報(bào)錯(cuò):Non SQL Error : Could not load class oracle.jdbc.OracleDriver。

          在設(shè)置CLASSPATH環(huán)境變量時(shí)將值設(shè)置為.;%JAVA_HOME%\lib,其中“.;”表示當(dāng)前路徑,為了讓Power Designer找到ojdbc14.jar,可將ojdbc14.jar放在Power Designer的安裝目錄下,或放在%JAVA_HOME%\lib目錄下。

               【說明】Oracle的驅(qū)動(dòng)jar包ojdbc14.jar讀者可從網(wǎng)上下載,或通過本博客提供的下載鏈接下載(http://files.blogjava.net/amigoxie/20131013_%E8%AE%BE%E8%AE%A1%E4%B9%8B%E8%B7%AF%EF%BC%9A%E4%BD%BF%E7%94%A8Power%20Designer%E5%B7%A5%E5%85%B7%E8%BF%9B%E8%A1%8C%E6%95%B0%E6%8D%AE%E5%BA%93%E8%AE%BE%E8%AE%A1.rar

          1.3 測(cè)試鏈接是否成功

          可點(diǎn)擊“Connection Profile Connection Definition”界面的“Test Connection”按鈕,進(jìn)入用戶名/密碼重新輸入頁面,如下圖所示:
               

          若數(shù)據(jù)庫(kù)連接成功,將顯示如下界面提示連接測(cè)試成功:
              

          若連接失敗,將提示“Connection test failed”,請(qǐng)確認(rèn)鏈接地址是否正確。

          1.4 連接Oracle數(shù)據(jù)庫(kù)

          Oracle數(shù)據(jù)源創(chuàng)建成功后,可選擇菜單欄“數(shù)據(jù)庫(kù)”->Connect…”彈出“Connect to a Data Source”界面,在“Connection Profile”下拉中選剛才創(chuàng)建的“xx_portal.dcp”,點(diǎn)擊“Connect”按鈕連接數(shù)據(jù)庫(kù)。如下圖所示:
             

          點(diǎn)擊“Connect”按鈕連接數(shù)據(jù)庫(kù),連接數(shù)據(jù)庫(kù)成功后,可查看數(shù)據(jù)庫(kù)中的表結(jié)構(gòu),也可通過Oracle數(shù)據(jù)庫(kù)中的表結(jié)構(gòu)逆向生成PDM文件。

          2、連接Oracle數(shù)據(jù)庫(kù)逆向工程生成PDM

          使用逆向工程建立物理數(shù)據(jù)模型PDM文件也可選擇“File->Reverse Engineer-> Database”,在彈出的界面中將“Model name”輸入為子系統(tǒng)的名稱,“DBMS”選擇“ORACLE Version 11g”,點(diǎn)擊“確定”按鈕進(jìn)入連接數(shù)據(jù)源頁面。如下圖所示:
               

                   點(diǎn)擊【確定】按鈕逆向工程選項(xiàng)設(shè)置界面,如下圖所示:
                

                   在“User a data source”中可選擇剛才創(chuàng)建的數(shù)據(jù)源“xx_portal.dcp”,默認(rèn)勾選“Reverse engineer user administrator’s permissions”,點(diǎn)擊“確定”按鈕進(jìn)入數(shù)據(jù)庫(kù)反向工程界面,如下圖所示:
               

                   點(diǎn)擊“確定”按鈕生成PDM文件,生成的PDM文件將包含表結(jié)構(gòu)、主鍵、外鍵、索引、約束和其它選項(xiàng)信息。

                   【說明】因?yàn)楣P者寫本博文時(shí)本機(jī)暫時(shí)無法連接之前使用的Oracle數(shù)據(jù)庫(kù),所以上圖從網(wǎng)上拷貝。

          3、一個(gè)PDM創(chuàng)建多個(gè)Diagram進(jìn)行設(shè)計(jì)以便查看

              將所有的表都放在一個(gè)Physical Diagram中,非常不便于查看,Power Designer的一個(gè)PDM文件可建立多個(gè)Physical Diagram,在創(chuàng)建新的物理數(shù)據(jù)模型后,可選擇物理模型名稱后點(diǎn)擊右鍵,選擇“New”->“Physical Diagram”創(chuàng)建新的Physical Diagram。

              例如筆者為“員工辦公門戶系統(tǒng)物理模型”建立了如下多個(gè)Physical Diagram:
             

              選擇不同的“Physical Diagram”,點(diǎn)擊右鍵后選擇“打開圖表”將會(huì)看到該P(yáng)hysical Diagram下的表設(shè)計(jì)。一般按大模塊建立Physical Diagram。

          4、使用Ctrl+ K在不同PD中一個(gè)表創(chuàng)建多個(gè)symbol

              多個(gè)“Physical Diagram”中可能都與某個(gè)“Physical Diagram”中的某個(gè)表存在關(guān)聯(lián),例如可能“新聞資訊”、“培訓(xùn)教程、在線考試和問卷調(diào)查”這兩個(gè)Physical Diagram的用戶ID可能都與“系統(tǒng)管理”中的“用戶表”存在外鍵關(guān)聯(lián)。

          筆者使用的方法是:使用Ctrl+C先復(fù)制,再Ctrl+K粘貼到Diagram中。

          Ctrl + V:創(chuàng)建一個(gè)與復(fù)制的實(shí)體相同的一個(gè)實(shí)體,相當(dāng)于一個(gè)新的實(shí)體(實(shí)體名稱必須唯一);

          Ctrl + K:創(chuàng)建一個(gè)原實(shí)體的快捷方式(修改原實(shí)體時(shí)新實(shí)體也會(huì)隨之變化)。

          5、附錄:使用PL/SQL連接Oracle數(shù)據(jù)庫(kù)

                   12章節(jié)章需要安裝Oracle客戶端,而后使用PL/SQL連接Oracle查看是否能連接成功。

          5.1 下載Oracle免安裝客戶端oracle_instantclient

          在Oracle官網(wǎng)那個(gè)下載Oracle免安裝客戶端 instantclient basic package,地址如下:

          http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html

          在該頁面搜索“client”,頁面如下所示:
           

          點(diǎn)擊“Instant Clinet”后進(jìn)入下載列表,如下圖所示:
             

          筆者的是32位的操作系統(tǒng),所以選擇“Instant Client for Microsoft Windows(32-bit)”。下載時(shí)需要AcceptLicense Agreement, 若沒有oracle帳號(hào),需先注冊(cè)一個(gè)oracle帳號(hào)。頁面如下圖所示:
             

          另外,請(qǐng)選擇合適版本:

          instantclient-basic-win32-11.x.x.x.x.zip:支持Oracle 9i以上的版(不包括Oracle9i)

          instantclient-basic-win32-10.x.x.x.zip:支持Oracle8i 和Oracle9i 的。

          筆者下載的是最新版本instantclient-basic-nt-12.1.0.1.0.zip。

          下載完成后,把文件解壓到本地某路徑下,如:D:\software\instantclient_11_2在此路徑下建立:NETWORK/ADMIN文件夾,在ADMIN文件夾下建立tnsnames.ora文件,參考內(nèi)容如下:

          orcl=
              (DESCRIPTION
          =
                  (ADDRESS_LIST
          =
                      (ADDRESS
          =(PROTOCOL=TCP)(HOST=10.28.19.120)(PORT=1521)) 
                  )
                  (CONNECT_DATA
          =
                      (SERVICE_NAME
          =orcl) 
                  )
              )



          5.2 安裝PL/SQL并進(jìn)行配置

              安裝PLSQL Developer,打開后點(diǎn)擊“取消”按鈕進(jìn)入。在菜單欄選擇“工具”->“首選項(xiàng)”,設(shè)置Oracle主目錄名和OCI庫(kù),如下圖所示:
             

              設(shè)置后關(guān)閉PL/SQL,再重新打開,在登錄頁面選擇在tnsnames.ora 中設(shè)置的“數(shù)據(jù)庫(kù)”,輸入用戶名、密碼即可登錄。如下圖所示:
             

          6、參考文檔

              (1)《PowerDesigner15連接Oracle數(shù)據(jù)庫(kù)并導(dǎo)出Oracle的表結(jié)構(gòu)》:

          http://wenku.baidu.com/view/4f819a24af45b307e87197ea.html

          (2)《如何用Powerdesigner的PDM(物理數(shù)據(jù)模型)生成數(shù)據(jù)庫(kù)及逆向工程(將現(xiàn)有的數(shù)據(jù)庫(kù)生成PDM)》:http://blog.csdn.net/jiang_ideal/article/details/3838806

          (3)《在powerdesigner中,一個(gè)table,怎么在diagram中創(chuàng)建多個(gè)symbol》:

          http://tyj06102000.blog.163.com/blog/static/1269328620107236446346/

          (4)《Oracle免安裝客戶端oracle_instantclient的安裝和配置》:

          http://wenku.baidu.com/view/bf396d6858fafab069dc0228.html

           

           

          posted on 2013-10-13 12:23 阿蜜果 閱讀(22749) 評(píng)論(5)  編輯  收藏 所屬分類: 架構(gòu)師之路


          FeedBack:
          # re: 設(shè)計(jì)之路:使用Power Designer工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)
          2013-10-13 15:25 | 小夜Q54755788
          支持我 下載 我的聊天室 美女秀聊天室 http://link.gd/22a 不看轉(zhuǎn)播 看直播  回復(fù)  更多評(píng)論
            
          # re: 設(shè)計(jì)之路:使用Power Designer工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)
          2013-10-14 09:45 | 津極地海洋館
          設(shè)計(jì)好無奈的  回復(fù)  更多評(píng)論
            
          # re: 設(shè)計(jì)之路:使用Power Designer工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)
          2013-11-27 13:31 | 渣漿泵廠家
          表示看不懂  回復(fù)  更多評(píng)論
            
          # re: 設(shè)計(jì)之路:使用Power Designer工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)
          2014-01-06 10:42 | 水泵
          前些天跟進(jìn)一個(gè)已經(jīng)做完一半但是不大的系統(tǒng),使用Oracle 11g數(shù)據(jù)庫(kù),因?yàn)闀r(shí)間比較緊張,而且項(xiàng)目組人員沒有文檔規(guī)范意識(shí),各個(gè)模塊的數(shù)據(jù)庫(kù)表都由各個(gè)開發(fā)人員獨(dú)立設(shè)計(jì),沒有完整的物理模型設(shè)計(jì)文檔,給維護(hù)造成很大困難。  回復(fù)  更多評(píng)論
            
          # re: 設(shè)計(jì)之路:使用Power Designer工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)
          2014-03-31 12:29 | 奈奎斯特
          <2013年10月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

                生活將我們磨圓,是為了讓我們滾得更遠(yuǎn)——“圓”來如此。
                我的作品:
                玩轉(zhuǎn)Axure RP  (2015年12月出版)
                

                Power Designer系統(tǒng)分析與建模實(shí)戰(zhàn)  (2015年7月出版)
                
               Struts2+Hibernate3+Spring2   (2010年5月出版)
               

          留言簿(263)

          隨筆分類

          隨筆檔案

          文章分類

          相冊(cè)

          關(guān)注blog

          積分與排名

          • 積分 - 2296376
          • 排名 - 3

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 丹巴县| 温泉县| 三台县| 武安市| 荆门市| 双峰县| 乌拉特后旗| 清水河县| 萝北县| 盐边县| 伽师县| 泾阳县| 乌鲁木齐县| 台江县| 汉中市| 平顶山市| 长沙市| 宜昌市| 五峰| 讷河市| 伊通| 许昌县| 山东| 双峰县| 太保市| 西宁市| 七台河市| 波密县| 长治市| 鄂州市| 祥云县| 额济纳旗| 宣威市| 吉林省| 桓仁| 手机| 彩票| 达尔| 深州市| 延寿县| 云和县|