|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() |
Bonjour,
j'ai un problème d'écriture dans un fichier avec le DBMS_OUTPUT.PUT_LINE(). j'ai positionné "dbms_output.enable(1000000);" mais cela n'est pas sufisant. Je voulais savoir s'il était possible de découper le resultat de ma requete SQL pour l'écrire dans plusieurs fichier. Actuellement je fais un "SPOOL nom_du_fichier" avant mes declarations de variable, et un SPOOL OFF a la fin de mon fichier. Merci d'avance. |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
ce serait bien d'être plus précis
Tu fais du SQL ou PL/SQL ? Tu peux pas utiliser UTL_FILE ? |
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#4 | ||||||
|
Membre du Club
![]() |
je fais du pl sql,
j'ai essayé d'utilisé UTL_FILE mais sans succès (je m'en suis jamais servis auparavant donc je sais pas si je m'y prend bien). Je pense pas que le code soit utile a quoi que ce soit, donc je vais essayé d'etre le plus clair possible: J'ai un curseur : Code :
je parcours donc mes resultat avec Code :
Et moi je voudrais transformer ça en : Code :
Version : oracle 9.2.0.4 |
||||||
|
|
00
|
|
|
#5 | ||
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
dans ce cas, le plus simple c'est encore d'utiliser une table temporaire.
Code :
|
||
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() |
ça va me donner quoi de plus ma table temporaire??
sa va qd meme crashé qd j'aurai atteind la limite du buffer. le probleme avec le spool, c'est que je n'arrive pas a changé la valeur du fichier de sorti pendant le traitement. |
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
la table temporaire ne consomme pas d'espace disque, elle utilise le TEMP et les données sont supprimé en fin de transaction ou de session.
T'aura pas besoin de plusieurs spool puisque tout tiendra dans un seul fichier... il n'y a pas de buffer si tu spooles le résultat du SELECT dans passer par du PL/SQL. C'est dbms_output qui te limite là. |
|
|
00
|
|
|
#8 | |
|
Membre du Club
![]() |
le probleme est que je dois sortir un fichier xml.
Et donc je dois formater mon fichier, du genre: ma requete est du type: select a, b, c ,d from**** et je dois avoir en sorti un fichier du type: Citation:
|
|
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
il y a des fonctions XML pour faire ça... j'suis pas super caler dans le domaine mais en tout cas, c'est pas la peine de le faire à la main
|
|
|
00
|
|
|
#10 | |||
|
Membre du Club
![]() |
Bon, j'ai changé de piste et j'utilise 2 table temporaire comme tu m'a expliqué.
mais quad je fait un : Code :
Citation:
|
|||
|
|
00
|
|
|
#11 |
|
Membre du Club
![]() |
j'ai placé mon spool et mes requetes select apres le end, et la plus d'erreur mais par contre mon fichier est vide.....
j'ai utiliser un c'est la bonne commande? |
|
|
00
|
|
|
#12 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Tu ne commites pas ? Sinon suivant l'option choisie pour ta table temporaire, tes données peuvent être effacées.
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#13 | ||
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
en PL/SQL la syntaxe est :
Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com