我们可以在查询结果窗口中显示 chr(10)(换行符)吗? (SQL 开发人员)

Posted

技术标签:

【中文标题】我们可以在查询结果窗口中显示 chr(10)(换行符)吗? (SQL 开发人员)【英文标题】:Can we display chr(10) (newline) in the Query Result Window? (SQL Developer) 【发布时间】:2017-01-25 18:41:59 【问题描述】:

SQL Developer 问题(SQL Developer 是 Oracle 的免费 IDE - 不要与不同产品 PL/SQL Developer 混淆):

查询结果窗口(显示查询结果的地方)不显示嵌入在文本字符串中的换行符 (chr(10))。也就是说,它将显示文本'one' || chr(10) || 'two',它应该显示在一个表格行但两行文本中,如onetwo。如果右键单击查询结果窗口中的单元格并选择“单条记录视图”,则文本将正确显示为两行。

我检查了工具 - 首选项 - 数据库 - 工作表,但我没有看到此行为的设置。事实上,有没有办法改变它?

为了说明问题 - 考虑在 SQL*Plus 中运行此查询:

SQL> select 'one' || chr(10) || 'two' as text_string from dual;

TEXT_ST
-------
one
two

1 row selected.

请注意,结果只有一行 (1 row selected),但文本在两行文本中(仍然在结果集中的单行中)。

SQL Developer 中的相同查询产生:

另外:我知道如果我将语句作为脚本运行(F5 或运行脚本按钮,而不是 CTRL-ENTER 或运行语句按钮),我可以获得“正确”的结果(在两行中)。我不是在寻求解决方法;我从字面上问这个问题,是否可以更改查询结果窗口的行为。

【问题讨论】:

您当然可以“作为脚本运行”(F5 键)。该输出将显示新行。这并没有回答您的问题(如何让它们显示在查询结果窗口中),但我在您没有考虑的情况下提到了它。 @MatthewMcPeak - 非常好;当您发表评论时,我正在将最后一段添加到我的问题中。你是对的——我知道这一点,这不是我的问题。一样的感谢! 【参考方案1】:

默认的网格视图会折叠这种空白。双击单元格,您可以为该特定单元格激活文本区域。

【讨论】:

双击可以查看单个单元格。我在我的问题中自愿提出了一些非常相似的问题,右键单击和单一记录视图,但你提出的甚至比这更好。不过,我对“网格视图”本身很感兴趣。我宁愿不必双击每个单独的单元格来搜索我需要的内容。你提到了“默认”网格——还有其他的吗? @mathguy 另一种选择是 Matthew McPeak 写的,运行脚本。 再一次,我并没有在寻找替代方案(不知道如何才能更清楚)。我的替代方法是从 SQL Developer 复制查询并在 SQL*Plus 中运行它。我知道如何解决这个问题。我相信您所说的是“不,我没有错过任何东西 - 我们不能让 SQL Developer 查询结果窗口显示换行符”。这就是我想知道的。感谢您的帮助! 据我所知,这种视图不是为多行显示而设计的。只要您可以通过合同访问 My Oracle Support,您当然可以提交和发布。 不需要(不,我无法获得支持 - 我是一个业余学习 Oracle 的人,在家里,除了运行简短的练习之外,我不以任何方式使用它...而且我不知道 SQL Developer 是否会属于这种情况)。我可以在需要时在 SQL*Plus 中运行查询,我只是想确保我没有忽略某些东西。干杯!

以上是关于我们可以在查询结果窗口中显示 chr(10)(换行符)吗? (SQL 开发人员)的主要内容,如果未能解决你的问题,请参考以下文章

ORALCE 换行符 空格符 回车符

oracle换行符,落表时怎么存

Oracle PL/SQL查询结果如何自动换行

解决sqlsever 2014 复制结果到excel 多出行的问题

在oracle里如何去掉数据后的回车换行符

Oracle REPLACE() 函数不处理回车和换行