Sqlloader pour alimenter un fichier plat ?

Résolu/Fermé
simodsio Messages postés 66 Date d'inscription mardi 31 janvier 2006 Statut Membre Dernière intervention 8 décembre 2009 - 1 août 2008 à 11:16
simodsio Messages postés 66 Date d'inscription mardi 31 janvier 2006 Statut Membre Dernière intervention 8 décembre 2009 - 1 août 2008 à 14:49
Bonjour à tous.

j'amerais savoir s'il est possible d'exporter les lignes d'une table oracle vers un fichier plat à l'aide d'sql loader si oui comment faire son fichier de controle.

merci infiniment d'avance
A voir également:

4 réponses

jee pee Messages postés 40514 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 2 décembre 2024 9 441
1 août 2008 à 11:21
salut,

sqlloader, comme son nom l'indique est utilisé pour charger la base oracle.

pour faire un fichier texte en sortie c'est tout à fait possible directement via sql, en faisant un spool du resulat

cdt
0
simodsio Messages postés 66 Date d'inscription mardi 31 janvier 2006 Statut Membre Dernière intervention 8 décembre 2009
1 août 2008 à 11:44
merici jee pee pour ta réponse

en faite dans mon cas je dois faire une boucle dans mon script de chargement et d'aprés ce que j'ai lus dans des forum on peux pas faire de boucle dans un spool, c'est pour ca que j pensé a faire mon chargement avec une procedure stocké.

si tu veux je te donne un exemple de ce que je veux faire: j une table T qui contient 4 champs ( ch1 ch2 ch3 ch_iteration) et chaque ligne de ma table doit etre chargé en fonction de la valeur du champ iteration.

exemple : Ch1 ch2 ch3 ch_iteration
x y z 3

cette ligne doit se charger 3 fois dans mon fichier plat.

voili voilo

merci bcp
0
jee pee Messages postés 40514 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 2 décembre 2024 9 441
1 août 2008 à 12:41
En sql pur je n'ai effectivement pas d'idée pour faire n lignes en sortie à partir de la valeur d'un champ.

Il faudrait effectuer cela en pl*sql , mais alors plus de spool dans un fichier de sortie.

Donc une solution pourrait êre un pl*sql qui génère une table temporaire avec tous les enregistrement,s et un sql tout bête qui redirigé vers un spool génèrerait le fichier de sortie à partir de la table temporaire.
0
simodsio Messages postés 66 Date d'inscription mardi 31 janvier 2006 Statut Membre Dernière intervention 8 décembre 2009
1 août 2008 à 14:49
j'ai créer un curseur qui ramene les lignes de ma table. mais je sais pas comment associer mon pl à un spool.

j'ai essaié utl_file mais pour ecrire dans le fichier je sais pas comment lui dire d'ecrire le résultat de ma requette dans le fichier, en gros je suis perdu :)


mici
0