1
SET PAGES 0;
SET LINE 1000;
SET LONG 9999999;
SPOOL C:\pensionnew.xml;
col foo format a60000;
--SELECT DBMS_XMLGEN.GETXML('SELECT * FROM DATAAG')foo FROM DUAL;
SELECT DBMS_XMLGEN.GETXML('SELECT XMLConcat(XMLElement("ID", e.ID),XMLElement("LAST_OFFICE_WORKED", e.LAST_OFFICE_WORKED))as "Pendata" 
  FROM dataag e') foo FROM DUAL;
SPOOL OFF;

私はxml生成にこのコードを使用しましたが、特定の長さの後に列タグが切り取られたので、列の長さまたは最大フォーマットをどのように増やしますか?

4

2 に答える 2

0

XMLconcat / element selectのラッパーとしてdbms_xmlgen.getxmlを使用しているのはなぜですか?これを1行に集約しようとしていますか?

ただし、ログではなく、ターミナルでのラップが疑われます(サンプルの行サイズが1000で、col形式が60000であるため)。ログの場合、サンプルXML出力を投稿できますか?

xmlagg1つのxmlドキュメントとして取得するための別のアプローチです。

SELECT XMLSERIALIZE(content xmlagg(XMLConcat(XMLElement("ID", 
       e.ID),XMLElement("LAST_OFFICE_WORKED", e.LAST_OFFICE_WORKED))) indent) 
  FROM dataag e;

XMLSERIALIZEきれいなプリントに追加しました。

于 2013-01-31T08:25:04.293 に答える
0

ページと行のサイズを設定するには、次のコマンドを使用します

set linesize value;
set pagesize value;

値に最大値を設定できます

于 2013-01-31T06:10:22.180 に答える