Sql*Loader
Résolu/Fermé
Bonjour,
Je voudrais savoir comment je pourrais faire un sql loader avec une condition.
exemple :C:\load>sqlldr userid=formation/formation control=control.txt log=log.txt bad=bad.txt discard=disard.txt direct=y errors=0
C'est à dire, dans mon fichier il y a un champ qui prend la donnée E ou L et par rapport à cette donnée ce fichier ce charge dans une table précise (table CFD_E ou table CFD_L).
Merci
Je voudrais savoir comment je pourrais faire un sql loader avec une condition.
exemple :C:\load>sqlldr userid=formation/formation control=control.txt log=log.txt bad=bad.txt discard=disard.txt direct=y errors=0
C'est à dire, dans mon fichier il y a un champ qui prend la donnée E ou L et par rapport à cette donnée ce fichier ce charge dans une table précise (table CFD_E ou table CFD_L).
Merci
A voir également:
- Sql*Loader
- Windows loader - Télécharger - Gestion de fichiers
- Logiciel sql - Télécharger - Bases de données
- Requete sql pix - Forum PHP
- Sql replace plusieurs valeurs - Forum Programmation
- Ora-00933: la commande sql ne se termine pas correctement ✓ - Forum Oracle
1 réponse
jee pee
Messages postés
41159
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
22 avril 2025
9 602
15 nov. 2011 à 12:51
15 nov. 2011 à 12:51
Bonjour,
Je ne sais plus s'il est possible de charger 2 tables en une seule opération. Pour résoudre ce cas je ferais simple, le chargement en 2 fois.
En mettant dans le fichier de contrôle quelque chose comme :
INTO TABLE CFD_L
when (6:1) = 'L'
puis un autre :
INTO TABLE CFD_E
when (6:1) = 'E'
(6:1) correspondant à la position du champ.
cdlt
Je ne sais plus s'il est possible de charger 2 tables en une seule opération. Pour résoudre ce cas je ferais simple, le chargement en 2 fois.
En mettant dans le fichier de contrôle quelque chose comme :
INTO TABLE CFD_L
when (6:1) = 'L'
puis un autre :
INTO TABLE CFD_E
when (6:1) = 'E'
(6:1) correspondant à la position du champ.
cdlt
15 nov. 2011 à 13:04
Je crois que j'ai pas le choix
Modifié par jee pee le 15/11/2011 à 13:07
http://www.orafaq.com/wiki/SQL*Loader_FAQ#Can_one_load_data_from_multiple_files.2F_into_multiple_tables_at_once.3F
15 nov. 2011 à 14:13
29 nov. 2011 à 11:20
c'est toujours pour la condition when
CFD_LIB1 POSITION(036:065) CHAR , dans cette ligne j'ai plusieurs caractère mais je voudrais qu'il regarde la position 40 qui doit etre = à' L' ou 'E' pour ensuite allez dans la bonne table
Je ne connais pas la syntaxe serai-ce
INTO TABLE CFD_E
when (40:1) = 'E'
INTO TABLE CFD_L
when (40:1) = 'L'
Je te remercie d'avance.
Modifié par jee pee le 29/11/2011 à 11:27