【问题标题】:How to configure PL/SQL Developer IDE to leave the columns names as they are?如何配置 PL/SQL Developer IDE 以保持列名不变?
【发布时间】:2013-05-07 17:57:31
【问题描述】:

我使用 PL/SQL Developer 创建了一个包含一些列的表来访问这个 Oracle 数据库。

点击将创建表格的“应用”按钮后,我所有的列名突然变成大写(几乎无法阅读),包括表格名!

是否可以将 PL/SQL Developer IDE 配置为保留列名和表名原样?!

【问题讨论】:

  • oracle 字典以大写字母工作。 oracle 中对象的命名约定通常是用“_”分隔单词。例如PRODUCT_TYPE
  • @haki,你是从哪里得到这个想法的? oracle 字典不“以大写字母工作”,它允许所有有效标识符,包括大写和小写字母。
  • Oracle 默认将表名以大写形式存储在数据字典中。如果您只是在 SQL 命令中指定不带引号的表名,它将被转换为大写。如果您将表或列名括在双引号中,那么它将按原样使用。
  • @Jeffrey Kemp - 我接受你的评论,但这样做弊大于利。
  • @haki,我正在回应您关于“oracle 字典以大写字母工作”的奇怪断言。 oracle没有这样的限制。事实上,如果有的话,这将表明一个 oracle 错误!

标签: sql oracle plsql plsqldeveloper


【解决方案1】:

您可以在双引号“”中给出列名。然后这些列名将保持原样。

【讨论】:

  • 您可以强制它们小写,但这很危险。在 oracle 中可以创建一个表... create table "MY_TABLE" (...);和...创建表“My_Table”(...);和...创建表“My_TaBlE”(...);同时!如果您没有“”,则 Oracle 会强制它们向上以确保只有一个 MY_TABLE。它可能难以阅读,但它比拥有多个名称相同但大小写不同的表更容易混淆。
  • 你是对的@Dave。但是还有一件事我在阅读大写表名时没有任何困难。你说的话?在给出表名时,您可以使用下划线“_”来分隔单词,这在编写查询时也会有所帮助。我相信。
  • 我同意(从我的示例 MY_TABLE 中可以看出)这正是我所做的。我也倾向于编写自己的创建表,而不是使用 SQLDEV 来为我做,所以如果编码标准是create table thisIsMyTable,那么我可以这样做。只有在使用向导时,SQLDEV 才会强制它们为大写。
  • 正确..但好吧..@The light有他的问题..可能是他的某些情况需要这样做。所以这个东西他可以用来摆脱麻烦.. :)
【解决方案2】:

Oracle DBMS 忽略大小写并将所有内容转换为大写除非您使用引号。但是报价有责任,你总是必须使用它们。

如果您不使用引号,您将收到错误消息 ORA-00942:表或视图不存在

【讨论】:

  • 现在可以看到了吗?无论如何,我修改了我的整个答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-18
  • 2017-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-27
  • 1970-01-01
相关资源
最近更新 更多