【问题标题】:select rowid Oracle选择 rowid 甲骨文
【发布时间】:2015-05-06 15:52:28
【问题描述】:

我试图显示 rowid 伪列,但发生了一些奇怪的事情, 这是我的查询

select rowid, rowid||'', rowid r from dual

输出:

ROWID||''           R
AAAAECAABAAAAgiAAA  AAAAECAABAAAAgiAAA

那么为什么不能显示rowid 没有别名或没有与其他东西连接?有什么解释吗? 我使用了 Toad 和 Oracle 10g。

【问题讨论】:

  • 我认为这是 TOAD 内部处理问题。尝试使用简单的 SQLplus
  • @Wernfried 我没有其他查询工具,但我尝试使用 SQLFiddle.com 并且更糟糕的是,在查询 rowid 时出现错误消息,如果您确定,请使用 SQLplus 尝试它并且不接受你的答案。
  • SQL Developer 也可能有点奇怪 - 将值包装为别名的长度(或 5 没有别名),没有列设置。 SQL*Plus 没问题。

标签: oracle oracle10g toad rowid


【解决方案1】:

这个seems to be a Toad setting隐藏伪列:

在您的数据网格中,鼠标右键单击 - SELECT COLUMNS

启用“ROWID”

你还有——

Toad - 视图 - 选项 - 数据网格 - 数据 - 显示 - 'Show ROWID in 可编辑网格'

它显示在 SQL*Plus、SQL Developer 和其他客户端中。

【讨论】:

  • 也可能与OCI有关。有一个选项,OCI 隐式返回 ROWID 作为第 0 列,即使查询没有返回它。当查询本身返回 ROWID 时,也许 TOAD 有点困惑。
  • @ibre5041 - 我认为该设置是为了禁止显示该隐式 OCI 列;如果您将其明确包含在选择列表中,这是可以理解的,但没有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-09
  • 1970-01-01
  • 2010-10-05
  • 2011-07-19
相关资源
最近更新 更多