【发布时间】:2013-07-02 13:22:23
【问题描述】:
全部,
在为 Oracle 11i 数据库编写 SELECT 查询时,为什么 Oracle 中的某些表强制对被选择的字段应用引号,而另一些则不强制。
我最近遇到的一个例子:
在 Aqua Data Studio 的查询分析器窗口中,我尝试从两个不同的表中选择相同的字段:
select _id from table1
select _id from table2
table1和table2差别很大,但是只有table1执行这个select语句没有报错。当我尝试为 table2 执行此语句时,我得到以下信息:
ORA-00904: "_ID": invalid identifier
Script line 1, statement line 1, column 7
但是,当我像这样执行第二条语句时,它可以完美运行:
select "_id" from table2
有谁知道这里发生了什么,为什么会出现这种情况,以及导致这种情况的表之间的主要区别是什么?
谢谢
【问题讨论】:
-
请看我对另一个问题的回答:stackoverflow.com/a/6030439/146325
标签: database oracle select plsql