Bonjour,
Je cherche à extraire les données d'une table (base Oracle version 8 )dans un fichier spool (via un PL/SQL)
Mon fichier ressemble à ceci :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| set heading off
set feedback off
set pagesize 0
set linesize 5200
set verify off
set newpage 0
set space 0
spool monfichierspool
SELECT
1||
ltrim(to_char(champ1,'000000000000000'))||
nvl(ltrim(to_char(champ2,'000000000000000')),' ')||
[...] ||
rpad(champ48,4000)
FROM
matable;
spool off |
Bien qu'ayant un champ de 4000 caractères (chaque ligne fait 5200 caractères) , si je limite mon extraction à 30 lignes je n'ai pas de problème, mon fichier spool contient bien toutes mes lignes.
Au delà de 30 lignes extraites (je n'ai pas fait le test pour savoir exactement à partir de combien ça plantait) , j'obtiens l'erreur oracle suivante :
ORA-01489: result of string concatenation is too long
Quelle est la limite pour le résultat d'une requete oracle (si c'est bien de là que vient le problème) ?
Comment puis-je contourner ce problème ?
Merci
Partager