IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL*Loader Oracle Discussion :

Comment charger un fichier .txt avec séparateur ";"?


Sujet :

SQL*Loader Oracle

  1. #1
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    361
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 361
    Points : 78
    Points
    78
    Par défaut Comment charger un fichier .txt avec séparateur ";"?
    Bonjour,

    La question est dans l'intitulé.

    Je ne parviens pas à charger dans Oracle un fichier .txt.
    J'en ai déjà fait avec des séparateur du type ;, mais là, il semblerait que les " me causent du tort...

    Voici un aperçu de ce que me donne le message d'erreur de la log:


    Nom de colonne Position Long. Séparat. Encadrem. Type de données
    ------------------------------ ---------- ----- ---- ---- ---------------------
    FILIERE FIRST * CHARACTER
    Chaîne de terminaison : '","'
    chaîne SQL pour la colonne : "trim(:FILIERE)"
    MAIL NEXT * CHARACTER
    Chaîne de terminaison : '","'
    chaîne SQL pour la colonne : "trim (:MAIL)"
    SOCIETE NEXT * CHARACTER
    Chaîne de terminaison : '","'
    chaîne SQL pour la colonne : "trim (:SOCIETE)"
    TYPE_COURRIER NEXT * CHARACTER
    Chaîne de terminaison : '","'
    Est-ce que quelqu'un aurait une idée sur ce qui peut poser problème?

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 099
    Points : 28 400
    Points
    28 400
    Par défaut
    Il faudrait le contenu du fichier de controle (ctl) et un exemple des lignes chargées pour pouvoir t'aider.

  3. #3
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    361
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 361
    Points : 78
    Points
    78
    Par défaut
    Voici une partie du CTL (le reste doit rester confidentiel):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    load data
    INFILE '...'
    BADFILE 'IMMAT.BAD'
     
    truncate
    --append
     
    INTO TABLE T_NEW_DEAL_J_75
    fields terminated by '","'
     
    (FILIERE "trim(:FILIERE)",
    MAIL"trim (:MAIL)",
    SOCIETE "trim (:SOCIETE)")
    Ci-dessous, une partie du fichier ;txt:

    24 AV DE MONTPELLIER","ALFA","DIVERS  DIVERS","20110228","20080327","VP" etc...

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 099
    Points : 28 400
    Points
    28 400
    Par défaut
    En précisant FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"', il y a de fortes chances que cela fonctionne mieux.

    Je reconnais que la documentation de SQL*Loader est particulièrement mal organisée et qu'on peut s'y perdre...

  5. #5
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    361
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 361
    Points : 78
    Points
    78
    Par défaut
    Merci pour la réponse rapide.

    Après essai avec la modification du .ctl, voici ce que me donne le log comme erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
       Nom de colonne               Position   Long.  Séparat. Encadrem. Type de données
    ------------------------------ ---------- ----- ---- ---- ---------------------
    FILIERE                             FIRST     *   ,  O(") CHARACTER            
        chaîne SQL pour la colonne : "trim(:FILIERE)"
    MAIL                                 NEXT     *   ,  O(") CHARACTER            
        chaîne SQL pour la colonne : "trim (:MAIL)"
    SOCIETE                              NEXT     *   ,  O(") CHARACTER            
        chaîne SQL pour la colonne : "trim (:SOCIETE)"
    TYPE_COURRIER                        NEXT     *   ,  O(") CHARACTER

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 099
    Points : 28 400
    Points
    28 400
    Par défaut
    Où est le message d'erreur ?

  7. #7
    Membre régulier
    Inscrit en
    Juin 2010
    Messages
    361
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 361
    Points : 78
    Points
    78
    Par défaut
    Pardon, je pensais que tout ce charabia avait une signification...

    Est-ce que ceci est plus utile?

    la valeur utilisée pour le paramètre ROWS est passée de 64 à 14

  8. #8
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 099
    Points : 28 400
    Points
    28 400
    Par défaut
    Est-ce qu'il y a une ligne dans le fichier de log qui parle d'erreur ?
    Des lignes sont elles chargées dans la table cible ?
    Qu disent les compteurs qui s'affichent dans le fichier .logUn fichier .bad est-créé ? ou un fichier .dsc ?

Discussions similaires

  1. [Débutant] Comment sauvegader un fichier txt avec un nom variable
    Par Ange54 dans le forum MATLAB
    Réponses: 2
    Dernier message: 21/10/2015, 23h02
  2. Comment charger des fichiers STL avec Java3D ?
    Par mark h dans le forum Général Java
    Réponses: 2
    Dernier message: 23/06/2014, 11h33
  3. comment traiter un fichier.txt avec "replace" ?
    Par pasrico dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 11/04/2011, 23h06
  4. Comment charger un fichier txt du web dans un memo Delphi - Pascal
    Par michaelminelli1 dans le forum Débuter
    Réponses: 2
    Dernier message: 14/11/2008, 17h30
  5. Réponses: 9
    Dernier message: 26/07/2006, 16h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo