Ceci est une ancienne révision du document !
Export CSV sous oracle avec sqlplus
De base on ne peut pas exporter en CSV
Pour exporter le resultat d'une requête oracle en fichier csv (séparé par des ;) :
- il faut modifier la requete source :
select column1, column2, column3 from MYVIEW WHERE MYCONDITIONS;
qui devient (replacement des , entre champs par “||';'||”):
select column1||';'||column2||';'||column3 from MYVIEW WHERE MYCONDITIONS;
- Enregistrons donc cette requête dans le fichier /tmp/requete.sql
- Admettons qu'on veuille exporter le resultat dans /tmp/resultat.csv , Il faut se connecter avec sqlplus et taper les commandes suivantes :
set pagesize 5000 set linesize 200 spool /tmp/resultat.csv @/tmp/requete.sql spool off;
Remarquez les mots clef “SPOOL $filename” et “SPOOL off” pour débuter puis mettre fin a la redirection de la sortie dans le fichier csv
adaptez le linesize pour avoir des lignes plus longues si vous en avez besoin