转自http://blog.sina.com.cn/s/blog_4fd11d0a0100amb4.html
今天用pogen对我用PowerDesigner设计的表生成po的时候老实报错,开始还以为是我的pogen的设置哪里存在问题,检查了好几遍,感觉没有任何问题,于是便对以前的表试试生成po文件,结果很正常,问题归结到我的表有问题。
用PowerDesigner生成的sql脚本,在PL/SQL中查询时,总是提示“表或视图不存在”
用PL/SQL自带的SQL查询是却存在,问题检查下来是因为脚本生成的时候,表明和列是带双引号的。
使用PowerDesigner脚本生成数据库时,表名一般会带引号。其实加引号是PL/SQL的规范,数据库会严格按照“”中的名称建表,如果没有“”,会按照ORACLE默认的设置建表(DBASTUDIO里面),默认是全部大写,这样,在ORACLE数据库里的字段就如“Column_1”,如果你把引号去掉,ORACLE自动默认为全部大写,即“COLUMN_1”,所以不必担心,这段SQL在PL/SQL中执行的时候是没有任何问题的,如果不加引号,在PL/SQL会自动识别为大写。
选择Database->Edit current database,选择Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,如下图手指向的位置改为“No”,点击确定。在弹出的确认对话框中点击确认
可是Database->Edit current database 这个选项我却没有找到
最后我只能将表明和字段名全部全部改成大写