SQLPlus exporter au format CSV (format de sortie de problème)

Je suis confronté à un problème avec un script de l'interface, censé exporter le contenu d'une table d'une base de données ORACLE dans un fichier CSV, qui est ensuite suivie par une importation de ces CSV dans une base de données MYSQL.

ETAPE 1: SQLPlus exporter au format CSV

set headsep off  
set heading off
set term off
set echo off
SET  RECSEPCHAR \n
set pagesize 0
set linesize 0
trimspool on
SET FEEDBACK OFF
spool as_ex_feature.csv
select '"AS'||'"|"'||feature_group||'"|"'||feature_desc||'"|"
    ||feature_order||'"|"'||prod_code||'"'
from MYVIEW WHERE MYCONDITIONS;
spool off;

-> cette étape est de générer le fichier CSV, mais le format semble incorrect, car je peux y trouver des retour chariot dans la sortie.
Aussi, vous allez le voir dans l'étape 2, nous pouvons définir un "JOINT PAR" valeur comment ai-je pu obtenir que l'on inclus dans le format d'exportation (ne semble pas être le cas actuellement).

ÉTAPE 2: MYSQL charge

LOAD DATA INFILE 'mycsvfile' REPLACE INTO TABLE `mt_feature` 
FIELDS TERMINATED BY '|'
ENCLOSED BY '"' 
ESCAPED BY '\\'
LINES TERMINATED BY '\n';

Ce script a dû être reconstruit pour des raisons techniques et Mysql partie n'a pas été modifié et fonctionne bien avec un bon fichier CSV à importer.

Le problème semble venir de la que SQLPlus à l'exportation, où je dois admettre que je n'ai pas beaucoup de connaissances sur. Je devrais peut-être utiliser une autre méthode pour obtenir ces fichiers générés?

S'il vous plaît laissez-moi savoir si vous avez besoin de plus de détails, j'ai l'impression d'être aveugle...


Script en cours d'exécution sur oracle 10g, Linux, Mysql 4.x

Merci!

Voir aussi stackoverflow.com/a/14141967/124416 pour une approche différente

OriginalL'auteur Laurent | 2011-01-28