【问题标题】:SQL Developer stripping inline hintsSQL Developer 剥离内联提示
【发布时间】:2013-03-15 12:35:54
【问题描述】:

我使用的是 SQL Developer 3.1.07。我用内联提示--+ hint 对Oracle 进行了查询,但SQL Developer 似乎在将提示提交到数据库之前已经删除了提示。多行提示/*+ hint */ 没有被剥离。是否有在 SQL Developer 中保留内联提示/cmets 的选项?

【问题讨论】:

  • 考虑编辑您的问题以包含一个任何人都可以用来复制您的问题的小样本。祝你好运。
  • 您从哪里得到有“内联提示”之类的信息?我很确定它们不存在(当然,我可能错了)。顺便说一句:您的标准提示语法错误 - Oracle 为此使用正斜杠。
  • @Frank Schmitt 我修正了斜线方向。存在单行提示。在这里阅读:docs.oracle.com/cd/E14072_01/server.112/e10592/…
  • @Alex 我是正确的。感谢他的链接。
  • 我认为 SQLDeveloper 对 SQL 编辑器有自己的规则,并且 SQL Plus 中常见的一些“事情”对于 SQL Developer 来说可能不常见(不幸的是)。奇怪的是,当我使用内联或多行提示从 SQL Developer 运行查询时,它总是显示在 v$sql 上。尽量不要将多行查询放在“实际上我只能说多行。

标签: oracle oracle11g oracle-sqldeveloper hints query-hints


【解决方案1】:

我认为解决这个问题的方法是始终使用多行注释语法,即使是单个提示:

select /*+ ordered */
      ename 
from emp
where ....

我不确定单行 --+ 语法有什么真正的优势(尽管请告诉您是否有一个只有这样才能做到的用例)。另一方面,它有一个令人眼花缭乱的缺点:它确实混淆了存储在去除回车和换行符的地方的查询,例如 V$SQL.SQL_TEXT。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-23
    • 2015-02-02
    • 1970-01-01
    • 2011-07-30
    • 1970-01-01
    • 1970-01-01
    • 2016-08-23
    相关资源
    最近更新 更多