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 Oracle Discussion :

modification de données par transco lors du chargement


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Par défaut modification de données par transco lors du chargement
    Bonjour,
    je cherche à charger un fichier plat (CVS) dans ma base de donnée et je cherche à savoir si SQL loader peux le faire
    ma contrainte est que je doit gerer des transcos.

    mon fichier est par exemple
    V1;X2;;Z1

    et entre le fichier et la table d'arrivée je doit changer la 1ere valeur en 'toto' si c'est V1, en 'titi' si c'est V2 etc...
    j'essai de comprendre si SQL loader arrive à faire ça mais j'ai de la misère à trouver
    ici http://jaouad.developpez.com/sqlldr/#LV-I on dit qu'il peux modifier des données mais j'arrive pas à trouver un lien pour expliquer comment, et sur la page de la FAQ c'est un peu succins pour comprendre
    ya aussi ce lien la mais avec aucune explication http://orafaq.com/faqloadr.htm#MODIFY

    quelqu'un pourrais répondre à ma question? ou me rediriger vers les bons sites qui expliquent ça tout bien?

  2. #2
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    Bonjour,

    tu peux utiliser un decode dans sqlldr lors de l'import de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    LOAD DATA INFILE 'data.csv'
    TRUNCATE
    INTO TABLE DVP_LOADER 
    FIELDS TERMINATED BY ';'
    (  NOM "decode('V1','toto')",          
     SALAIRE        
    )
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  3. #3
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Par défaut
    c'est valable si ya plusieurs possibilités? du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NOM "decode('V1','toto', 'V2', 'titi')",

  4. #4
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    c'est valable si ya plusieurs possibilités? du genre
    Bien sûr, c'est un decode après tout
    Par contre j'ai été un peu vite à répondre avant... la syntaxe est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    decode(:NOM, 'val1', 'val2', 'val3','val4','val5')
    Si NOM = val1 alors il sera remplacer par val2,
    sinon si il est egal à val3 alors remplacer par val4
    sinon par défaut val5.

    La valeur par défaut n'est pas obligatoire. et tu peux mettre autant de test que tu veux !
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  5. #5
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 8
    Par défaut
    ok
    merci

    j'en profite si je met 3 valeurs de transco (si v1 alors toto, si V2 alors titi, si V3 alors tata), est il possible de dire que je rejette la ligne à l'insertion si la valeur du fichier d'origine n'est pas dans le scope défini (docn ici v1, v2 ou v3)?

  6. #6
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    j'en profite si je met 3 valeurs de transco (si v1 alors toto, si V2 alors titi, si V3 alors tata), est il possible de dire que je rejette la ligne à l'insertion si la valeur du fichier d'origine n'est pas dans le scope défini (docn ici v1, v2 ou v3)?
    Dans sqlldr, à ma connaissance non (mais bon je sais pas tout )

    Par contre pour tester ça tu peux créer un trigger sur la table de destination et n'enregistrer la valeur que si on est dans le scope.
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

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

Discussions similaires

  1. Modification de données par appel de fonction
    Par papouuu dans le forum ASP.NET
    Réponses: 6
    Dernier message: 17/01/2011, 10h50
  2. Réponses: 5
    Dernier message: 03/09/2008, 14h19
  3. Réponses: 2
    Dernier message: 05/11/2007, 14h23
  4. modifications de données par lot
    Par pracolas dans le forum Access
    Réponses: 16
    Dernier message: 03/02/2007, 13h13
  5. [MySQL] Modification des données d'une base par les membres
    Par pod1978 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 22/03/2006, 17h25

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