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 :

astuce pr charger un nombre précis de colonnes avec sqlloader


Sujet :

SQL*Loader Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 8
    Par défaut astuce pr charger un nombre précis de colonnes avec sqlloader
    bonjour,
    j'ai un fichier avec 3 colonnes et je vx charger la 2eme et 3eme avec sqlloader dans une table de 2colonnes seulement sachant que le champ1 et champ2 de la table correspondent à la colonne2 et colonne3 du fichier de controle.

    Merci de me fournir un coup de pouce !!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 23
    Par défaut
    bonjour,

    je ne sais pas si tu as résolu ton problème. vu la date de ton post surement.
    mais au cas où quelqu'un aurait la même demande voici une réponse.

    dans ton .ctl tu dois indiquer les 3 colonnes de ton fichier source en spécifiant l'option "filler" sur la colonne que tu ne veux pas intégrer.

    cela donnerai ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    LOAD DATA 
    REPLACE
    INTO TABLE MA_TABLE
    FIELDS TERMINATED BY ';' 
    OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS 
    (champ1_source filler,
    champ2_source,
    champ3-source)

    ///////
    Attention ! dans le cas où tu dois utiliser ton champ1 avec une chaîne sql tu devras utiliser "boundfiller"
    ///////

    ça peut être notamment le cas ou tu dois construire un ID en concaténant un code et une version. J'ai eu le cas avec une table pour nomenclature qui était révisée plusieurs fois (1 code unique par version, mais ce code peut être réutiliser dans la version révisée de la nomenclature)

    soit un fichier source "nomenclature" composé des 3 champs suivants :
    nom_code;nom_version;nom_lib

    et une table de destination tab_nom suivante :
    tab_nom_id
    tab_nom_code
    tab_nom_version

    tab_nom_id sera construit via la version et le code dans le ctl comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    LOAD DATA 
    REPLACE
    INTO TABLE table_nom
    FIELDS TERMINATED BY ';' 
    OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS 
    (tab_nom_code,
    nom_version boundfiller,
    tab_nom_lib,
    tab_nom_id ":nom_version||'-'||:tab_nom_code")

    Cordialement,

Discussions similaires

  1. Nombre maximum de colonne conseiller par table
    Par Analfabete dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 20/01/2007, 15h18
  2. Réponses: 4
    Dernier message: 12/09/2006, 16h42
  3. [VBA-E] Nombre max de colonnes ds une listbox
    Par moicwill dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 08/06/2006, 16h14
  4. [forms 6i] charger un fichier dans une table avec sqlloader
    Par moneyinthebank dans le forum SQL*Loader
    Réponses: 8
    Dernier message: 29/04/2006, 01h15
  5. Nombre de colonnes avec le nom de la table
    Par benji41 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 10/07/2005, 20h17

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