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 :

Problème avec sqlldr


Sujet :

SQL*Loader Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de sws2008
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Par défaut Problème avec sqlldr
    bonjour tout le monde j'ai essayé de charger des donnée a partir d'un fichier csv a une table de ma base oracle 9i mais rien ne se charge je sais pas c'est quoi les probléme :
    *vous trouvez ci_joint mon fichier de control,log et un imprime écran de commande dos pour excuter sqldr:


    *aussi voici un extrait du contenu de mon fichier csv
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    "  166609";11/22/2008;11/29/2008;"JTA 22/11-7";"9039";"PM";0;1242.740;0.000;0.000;0
    "  169004";11/24/2008;12/01/2008;"infoweb24/11-7";"9071";"PM";0;0.000;0.000;0.000;0
    "  166776";11/22/2008;12/06/2008;"FLY 22/11-14";"9045";"PM";0;0.000;0.000;0.000;0
    aidez moi SVP
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  2. #2
    Membre expérimenté
    Avatar de (Benoit)
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 184
    Par défaut
    Le Loader plante sur la première ligne de données car il lit un nombre entre guillemets. Tu dois ajouter la clause ENCLOSED BY " pour que ca marche.
    Tu peux egalement augmenter la tolérance de sqlldr aux erreurs en spécifiant errors = n (je crois que c'est ce paramètre là mais vérifie)

  3. #3
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    ton fichier control tu peux mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    LOAD DATA INFILE 'E:\a_importation_dans_rappoprt\sauvegarde\icxrm__csv\icxrm.csv'
    TRUNCATE
    INTO TABLE icxrm
    FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"'
    (
    REGISTER     ,
    ARR  date 'MM/DD/YY'   ,  
    DEP date 'MM/DD/YY'      ,
    NAME         ,
    ROOM         ,
    RKAT         ,
    GONE        ,
    RFIXE        ,
    REXTRA                                ,
    RPAYN      ,
    IMPORTED     
    )
    voici ma commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sqlldr test/test@test data=test.csv control=icxrm.ct
    voici le resultat
    Bad File: test.bad
    Discard File: none specified

    (Allow all discards)

    Number to load: ALL
    Number to skip: 0
    Errors allowed: 50
    Bind array: 64 rows, maximum of 256000 bytes
    Continuation: none specified
    Path used: Conventional

    Table ICXRM, loaded from every logical record.
    Insert option in effect for this table: TRUNCATE

    Column Name Position Len Term Encl Datatype
    ------------------------------ ---------- ----- ---- ---- ---------------------
    REGISTER FIRST * ; O(") CHARACTER
    ARR NEXT * ; O(") DATE MM/DD/YY
    DEP NEXT * ; O(") DATE MM/DD/YY
    NAME NEXT * ; O(") CHARACTER
    ROOM NEXT * ; O(") CHARACTER
    RKAT NEXT * ; O(") CHARACTER
    GONE NEXT * ; O(") CHARACTER
    RFIXE NEXT * ; O(") CHARACTER
    REXTRA NEXT * ; O(") CHARACTER
    RPAYN NEXT * ; O(") CHARACTER
    IMPORTED NEXT * ; O(") CHARACTER


    Table ICXRM:
    3 Rows successfully loaded.
    0 Rows not loaded due to data errors.
    0 Rows not loaded because all WHEN clauses were failed.
    0 Rows not loaded because all fields were null.


    Space allocated for bind array: 181632 bytes(64 rows)
    Read buffer bytes: 1048576

    Total logical records skipped: 0l

  4. #4
    Membre confirmé Avatar de sws2008
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Par défaut
    merci les amis vous m'avez aidé a résoudre le problème et j'ai réussi a alimenter mes tables mais il me reste un autre problème comment pourrais je éliminer les " " des enregistrements de ma table?
    existe il une commande que je peut mettre dans mon fichier de control qui me permet de faire ça ?
    et merci d'avance
    Images attachées Images attachées  

  5. #5
    Membre confirmé Avatar de sws2008
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Par défaut
    en fait j'ai pas trouvé une commande qui me permet de faire ça mais j'ai résolu mon pb en créant une fonction que je lui fait appelle lorsque je récupère des données de ma base de données pour éliminer les guillemets
    merci pour tous qui ont pris de leur temps pour m'aider

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 175
    Par défaut
    réponse un peu tardive mais tu pouvais utiliser la fonction TRIM() pour virer les espaces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    LOAD DATA INFILE 'E:\a_importation_dans_rappoprt\sauvegarde\icxrm__csv\icxrm.csv'
    TRUNCATE
    INTO TABLE icxrm
    FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"'
    (
    REGISTER     "trim(:REGISTER)",
    ARR  date 'MM/DD/YY'   ,  
    DEP date 'MM/DD/YY'      ,
    NAME         ,
    ROOM         ,
    RKAT         ,
    GONE        ,
    RFIXE        ,
    REXTRA                                ,
    RPAYN      ,
    IMPORTED     
    )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème formattage avec sqlldr
    Par juin29 dans le forum SQL*Loader
    Réponses: 8
    Dernier message: 27/08/2008, 13h43
  2. Problème avec sqlldr
    Par Darcynette dans le forum SQL*Loader
    Réponses: 3
    Dernier message: 12/08/2008, 17h52
  3. problème avec sqlldr
    Par wolfazer dans le forum Débuter
    Réponses: 7
    Dernier message: 19/02/2008, 14h47
  4. Problème avec sqlldr
    Par arezki76 dans le forum SQL
    Réponses: 5
    Dernier message: 29/10/2007, 16h02
  5. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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