J'ai un script comme celui-ci:
SET ECHO OFF SET FEEDBACK OFF SET VERIFY OFF SET HEADING OFF SET TERMOUT OFF SET TRIMOUT ON SET TRIMSPOOL ON SET WRAP OFF SET LINESIZE 32000 SET LONG 32000 SET LONGCHUNKSIZE 32000 SET SERVEROUT ON SPOOL C:\Export.txt SELECT XMLELEMENT("element1",xmlelement("element2",xmlattributes(.....))) FROM --TABLENAME-- WHERE --CONDITIONS--
3 Réponses :
Que diriez-vous d'utiliser GetClobval () pour convertir la sortie en un clob?
SELECT XMLELEMENT("element1",xmlelement("element2",xmlattributes(.....))).getClobVal() FROM --TABLENAME-- WHERE --CONDITIONS--
Il suffit d'ajouter la ligne suivante à droite après les commandes définies: où columnname est l'alias de la colonne XML de votre instruction SELECT (vous devez ajouter un alias). p> Ceci définit la largeur maximale pour cette colonne, soit 2000 caractères par défaut. Notez que, même si vous pouvez définir le format de Col aussi élevé que 60000 caractères, le plus que vous obtiendrez réellement sur une ligne avec SQLPlus est 32767 strong>, car il s'agit de la limite supérieure de la connexion. P> < / p>
Ceci est très utile lorsque vous êtes Script SCRIPTER DDL à l'aide de dbms_metadata.get_ddl () code>
.
Êtes-vous sur Windows? J'avais le même problème et aucune des deux autres réponses m'a aidé (directement, je devais faire une autre chose). Suivant les conseils de Cet article sur la configuration de SQL * Plus pour Windows L'auteur Notes: < / p>
[Note3]
Définir Long Big_Number code> Pour que vous puissiez voir la définition d'un déclencheur ou d'une vue compliquée, ou de texte dans une colonne longue ou de la colonne de clouts. p> blockQuote>
Je fixe le mien comme étant
long 32000 code> (ma plus longue ligne était un peu de plus de 2000 caractères) et qui résolvait le problème pour moi. P>
Cela devrait être ok. Que visuez-vous le fichier avec - Votre éditeur a-t-il une limite de longueur de ligne? Je me demande si la bobine est bien correcte mais elle a juste l'air tronquée lorsque vous essayez de le voir.