PowerDesigner導入到oracle的表不能正常使用,報 "ORA-00942 表或者視圖不存在" 的錯誤
原因由下:
使用pd和oracle連接需要注意引號以及表名大小寫問題,pd 生成的腳本都是用雙引號" "括起的,這樣如果字母有小寫,在數(shù)據(jù)庫中自動生成小寫的對象,如表和字段,如果使用這些對象時不用雙引號括起來,就會提示找不到對象。
解決方法:
1. 在sql語句中也用""把表名引好,如 stmt.executeQuery("select * from \"syUser\"");
2. 打開pd,進入Tools -> Model Options -> Naming Convention,把Name和Code的標簽的Charcter case選項設置成Uppercase或者Lowercase,只要不是Mixed Case就行!
3. 選擇Database -> Edit current database -> Script -> Sql -> Format,有一項CaseSensitivityUsingQuote,它的 comment為“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否適用雙引號來規(guī)定標識符的大小寫,可以看到右邊的values默認值為"YES",改為"No"即可!
推薦用第2種方法.
眼鏡蛇