ORACLE在建表的时候默认所有的表名和列名都是大写的。如果想要变成小写,就需要加上双引号。加上双引号后可以建各种各样的表,并不一定符合标示符的规定(以英文字母开头) ,甚至可以建以数字开头的表,特殊符号开头的表。例如
SQL> create table "1" ("abc" varchar2(23));
Table created.
SQL> create table "$" ("zzz" number(4));
Table created.
这样的表在查询的的时候也需要加上双引号。
SQL> select * from "1";
no rows selected
SQL> insert into "1" values('abc');
1 row created.
SQL> select abc from "1";
select abc from "1"
*
ERROR at line 1:
ORA-00904: "ABC": invalid identifier
SQL> select a."abc" from "1" a;
abc
-------------------------
abc
PD 默认的生成数据字典的语句含有双引号。这样建的表会有大小写的区分。在开发的时候很容易出现ORA-00904错误。为了避免这种错误,需要pd 中设置
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 Database->Edit Current DBMS ->Script->sql->format->CaseSensitivityUsingQuote将value改为no,这样生成的sql 就不会有双引号,避免的命名上的混乱
SQL> create table "1" ("abc" varchar2(23));
Table created.
SQL> create table "$" ("zzz" number(4));
Table created.
这样的表在查询的的时候也需要加上双引号。
SQL> select * from "1";
no rows selected
SQL> insert into "1" values('abc');
1 row created.
SQL> select abc from "1";
select abc from "1"
*
ERROR at line 1:
ORA-00904: "ABC": invalid identifier
SQL> select a."abc" from "1" a;
abc
-------------------------
abc
PD 默认的生成数据字典的语句含有双引号。这样建的表会有大小写的区分。在开发的时候很容易出现ORA-00904错误。为了避免这种错误,需要pd 中设置
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 Database->Edit Current DBMS ->Script->sql->format->CaseSensitivityUsingQuote将value改为no,这样生成的sql 就不会有双引号,避免的命名上的混乱
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10522540/viewspace-503963/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10522540/viewspace-503963/