Comment créer un fichier plat avec des valeurs extraites d'une base de données (en utilisant select) sous UNIX?Comment créer un fichier plat avec des valeurs extraites d'une base de données sous UNIX?
1
A
Répondre
1
Si vous utilisez SQLPlus, utilisez SPOOL directive pour afficher la sortie du script dans un fichier. Ce SO question details how to get a CSV file via SQLPlus/SPOOL, par exemple.
SPOOL your_file.txt
SELECT 1, 'test'
FROM DUAL
SPOOL OFF
connexes:
1
Vous devriez pouvoir appeler sqlplus
à partir d'un script shell et rediriger les résultats vers un fichier plat. Voir this answer pour plus de détails.
1
Pour les variables passées à un script shell essayer un document en:
#!/bin/ksh
var=$(printf "'%s'" `date +%b-%d-%Y`)
sqlplus -s me/[email protected] <<!
set pages 55
spool outfile.lis
select * from mytable where sales_date= $var ;
spool off
!
Il utilise la date d'aujourd'hui. Le fichier plat est outfile.lis