【问题标题】:Force identifier case sensitivity in oracle在 oracle 中强制标识符区分大小写
【发布时间】:2012-11-01 00:40:00
【问题描述】:

在 oracle 中,当使用不带引号的标识符时,它们会默认大写。换句话说,这两个语句是等价的:

SELECT name FROM my_table
SELECT "NAME" FROM "MY_TABLE"

有什么办法可以停止无声大写,让下面的语句变成等价的?

SELECT name FROM my_table
SELECT "name" FROM "my_table"

【问题讨论】:

  • 如果您使用 qoutes 中的表名创建表,它应该可以按照您的喜好工作。
  • 我相信引用的标识符是停止行为的方式,不知道全局设置来改变它。
  • @eisberg,表格已经用小写字符创建了。
  • @Nicholas Krasnov,请再次阅读问题。
  • @linepogl 再次阅读您的问题。如果您的目标是改变 Oracle 的静默行为并阻止它静默大写,那么答案就是 no

标签: sql oracle


【解决方案1】:

不,很遗憾你不能自定义how Oracle interprets your identifiers

请注意,Oracle 对以下名称的解释相同,因此它们不能用于同一命名空间中的不同对象:

employees
EMPLOYEES
"EMPLOYEES"

将不带引号的标识符转换为大写(内部所有对象名称都区分大小写)很方便(向后兼容?)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-01
    • 2012-10-12
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    • 2021-02-27
    • 1970-01-01
    相关资源
    最近更新 更多