使用PowerDesigner脚本生成数据库时,表名一般会带引号。其实加引号是PL/SQL的规范,数据库会严格按照“”中的名称建表,如果没有“”,会按照ORACLE默认的设置建表(DBA STUDIO里面),默认是全部大写,这样,在ORACLE数据库里的字段就如“Column_1”,如果你把引号去掉,ORACLE自动默认为全部大写,即“COLUMN_1”,所以不必担心,这段SQL在PL/SQL中执行的时候是没有任何问题的,如果不加引号,在PL/SQL会自动识别为大写。
这个问题是生成脚本格式的问题,因此,我们可以尝试在DBMS配置文件中修改相应的格式设置来解决这个问题。选择Database->Edit current database,选择Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,改为“No”,点击【确定】按钮。在弹出的确认对话框中点击【确认】。
[img]http://ajava.org/uploads/090720/1_101611_1.gif[/img]
采用了Oracle 9i数据库,建表,用PowerDesinger 12建模型,概念模型转成物理模型,看Preview时,就奇怪的发现所有的drop 、create等操作到表名、字段名、外键名时,都加上了双引号。
解决这些引号:
打开Database -> Edit Current DBMS ,出现一个编辑界面,在右边的框里,找到script分节点,再依次找到sql -> format 节点,下面有一个这样的名称的属性:CaseSensitivityUsingQuote,把这个属性的值设为“no”,再看生成的script,就全部双引号都去掉了。
这个问题是生成脚本格式的问题,因此,我们可以尝试在DBMS配置文件中修改相应的格式设置来解决这个问题。选择Database->Edit current database,选择Sql->Format,有一项CaseSensitivityUsingQuote,它的comment为“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否适用双引号来规定标识符的大小写,可以看到右边的values默认值为“YES”,改为“No”,点击【确定】按钮。在弹出的确认对话框中点击【确认】。
[img]http://ajava.org/uploads/090720/1_101611_1.gif[/img]
采用了Oracle 9i数据库,建表,用PowerDesinger 12建模型,概念模型转成物理模型,看Preview时,就奇怪的发现所有的drop 、create等操作到表名、字段名、外键名时,都加上了双引号。
解决这些引号:
打开Database -> Edit Current DBMS ,出现一个编辑界面,在右边的框里,找到script分节点,再依次找到sql -> format 节点,下面有一个这样的名称的属性:CaseSensitivityUsingQuote,把这个属性的值设为“no”,再看生成的script,就全部双引号都去掉了。