Linux上的Oracle DAtabase

时间:2012-08-07 20:39:59

标签: windows linux oracle

我对oracle上的区分大小写有疑问。我正在开发一个访问oracle 11g数据库的项目,Oracle服务器安装在windows server 2008上。我们正在linux环境中部署这个应用程序,此时应用程序将与linux机器上的oracle数据库进行通信。

我想知道区分大小写是一个问题吗?恩。如果我的应用程序查询表名“Foo”为“select * from foo”,这在windows环境中不是问题,这会是linux中的问题吗?

感谢。

1 个答案:

答案 0 :(得分:2)

在大多数情况下,从某种意义上讲,您所说的Oracle可以被视为不区分大小写。但实际情况并非如此。

来自documentation

  

不带引号的标识符不区分大小写。 Oracle解释它们   作为大写。带引号的标识符区分大小写

这意味着通常所有对象都是大写的,Oracle会对此进行处理:

select * from foo;

与:

相同
select * from "FOO";

但是,如果您的表实际上是创建为区分大小写的,那么您必须指定正确的大小写:

select * from "Foo";

在实践中很少会将对象创建为区分大小写,但Oracle确实允许这样做。如果不清楚,请告诉我,我会尽力给出更好的解释