PowerDesigner生成数据库建表sql脚本
?
?
PowerDesigner生成數(shù)據(jù)庫建表sql腳本
?
一、生成sql server 2000或oracle建表sql腳本
1、新建一個物理模型,通過database菜單下的change current dbms可查看當前所用的DBMS是什么類型的,比如sql server 2000 或oracle 10g,當前選擇sql server 2000。
2、在新建的dbms為sql server 2000的物理模型中添加表及關系,通過database菜單下的generate database可將當前DBMS的表結構及關系導出成sql語句。
3、若想將sql server 2000的表結構及關系變成oracl 10g的表結構及關系,可通過Tools菜單下的generate physical data model,再選擇DBMS為oracle10g,就可生成oracl10g的表結構及關系。
4、若想將oracl10g中的表結構及關系導出成sql語句,執(zhí)行database菜單下的generate database可將當前DBMS的表結構及關系導出成sql語句。
注意:oracle10g生成的sql語句可能表名及字段名存在用引號括起的情況,不用擔心,通過簡單的設置即可解決。
二、PowerDesigner生成數(shù)據(jù)庫建表sql腳本時出現(xiàn)雙引號解決方法(測試通過的軟件版本為PowerDesigner V15.1.0.2850)
PowerDesigner生成數(shù)據(jù)庫建表SQL腳本時,尤其是Oracle數(shù)據(jù)庫時,表名一般會帶引號。其實加引號是PL/SQL的規(guī)范,數(shù)據(jù)庫會嚴格按照“”中的名稱建表,如果沒有“”,會按照 ORACLE默認的設置建表(DBA STUDIO里面),默認是全部大寫,這樣,在ORACLE數(shù)據(jù)庫里的字段就如“Column_1”。如果你把引號去掉,ORACLE自動默認為全部大寫,即“COLUMN_1”,所以這段SQL在PL/SQL中執(zhí)行的時候是沒有任何問題的,如果不加引號,在PL/SQL會自動識別為大寫。如果加了引號,sql或者hql查詢“Column_1='XXX'”時,就會報錯:ORA-00904: "COLUMN_1": 無效的標識符,除非寫為“‘Column_1’='XXX'”。?
這個問題是生成腳本格式的問題,因此,我們可以嘗試在DBMS配置文件中修改相應的格式設置來解決這個問題。選擇“DBMS Properties”,選擇Script->Sql->Format,有一項CaseSensitivityUsingQuote,它的comment為“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否適用雙引號來規(guī)定標識符的大小寫,可以看到右邊的values默認值為“YES”,改為“No”,點擊【應用】按鈕。
?
http://blog.tianya.cn/blogger/post_read.asp?BlogID=4132684&PostID=39104319
轉載于:https://www.cnblogs.com/hengli/archive/2013/01/23/2872702.html
總結
以上是生活随笔為你收集整理的PowerDesigner生成数据库建表sql脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ZOJ Monthly, January
- 下一篇: 摄影师张梦格App项目总结