gpt4 book ai didi

xml - Oracle 的 xmlserializer 中的尾随空格

转载 作者:数据小太阳 更新时间:2023-10-29 03:00:06 25 4
gpt4 key购买 nike

我在 Linux 作业的 Oracle sqlplus 查询中使用 XMLSerializer。在 SQLDeveloper 命令选项卡上,一切看起来都很好,但在 linux 上,我看到 xml 输出尾随空格:

${ORAPLUS} -s /@tns_entry <<_ORALINE
--WHENEVER OSERROR EXIT 1
WHENEVER SQLERROR EXIT SQL.SQLCODE
SET TERM OFF
SET SHOW OFF
SET FEEDBACK OFF
SET HEADING OFF
SET HEAD OFF
SET PAGESIZE 0
set linesize 180
--set wrap on
set long 100000
SET LONGCHUNKSIZE 100000
SPOOL ${SPOOLFILE} APPEND
select xmlserialize(content xmlelement( "parent", xmlelement("child",
xmlelement("child-of-child", 'value'))) indent size=2) from dual;
SPOOL OFF
EXIT 0
_ORALINE

输出:

<parent>                                                                                                                                                                     
<child> How do I get rid of the spaces here?
<child-of-child>value</child-of-child>
</child>
</parent>

当然,我可以运行 post-pretty-up 命令来删除尾随空格,但这看起来像是在对抗症状。

最佳答案

这并不是真正的 XMLSerialize() 调用,它是假脱机数据的默认行为。

在你的脚本中,添加:

SET TRIMSPOOL ON

From the SQL*Plus documentation :

SET TRIMS[POOL] {ON | OFF}

Determines whether SQL*Plus puts trailing blanks at the end of each spooled line. ON removes blanks at the end of each line. OFF enables SQL*Plus to include trailing blanks.

交互式 session 有一个等效项,SET TEIMOUT ON,如果您要重定向输出而不是假脱机输出,这很有用。

关于xml - Oracle 的 xmlserializer 中的尾随空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52150308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com