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

Installation, migration et administration Discussion :

Mise a jour des imports avec Talend


Sujet :

Installation, migration et administration

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 53
    Points : 35
    Points
    35
    Par défaut Mise a jour des imports avec Talend
    Bonjour,
    je me suis mis dernièrement à Talend pour mon stage et je trouve que c'est un outil très puissant. seulement je n'arrive pas à faire une chose avec et je ne sais pas si c'est possible.
    En effet je dois gérer des imports de fichiers CSV.c'est à dire supposons que j'importe un fichier 'A' à T1 avec les colonnes suivantes

    utilisateur | voiture associé
    David | BMW

    à T2 j'importe un fichier 'B' qui est une mise a jour de 'A' ou il y'a

    utilisateur | voiture associé
    David | MERCEDES

    comment pouvoir mettre a jour ma table sans rajouter une ligne c'est à dire écraser la valeur existante en faisant des tests sur les colonnes ?

  2. #2
    Membre du Club
    Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mars 2011
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mars 2011
    Messages : 42
    Points : 49
    Points
    49
    Par défaut
    Il te faut pour cela faire une Mise à Jour. (UPDATE)

    Pour faire une mise à jour, il te faut une clé de Mise à jour. Cad un identifiant unique pour chaque ligne. Il faut donc que tu définisses cette clé.

    Dans ton exemple, il te faudra rajouter une colonne avec un id, parce que des David ayant une BMW il peut y en avoir un grand nombre!

    tu me suis? Quel est exactement le schéma de ta table?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 53
    Points : 35
    Points
    35
    Par défaut
    Merci pour la réponse.
    en faite il s'agit d'un très grand schéma (celle de l'entreprise ou je fait mon stage) et je dois faire des imports a des fichiers seulement les informations dans ces fichiers sont variable entre T1 et T2

    par exemple j'ai 3 table dans ma base :

    -utilisateur(idutil,nom,prenom)
    -voiture(idvoiture,matricule,...)
    -affectation_util_voiture(idutil,idvoiture,date_deb_affect,date_fin_affect)
    et a T1 on a dans le fichier à importer :

    3 colonnes :

    nom | prenom | matricule
    hex | davix |05 hx 101

    donc moi ce que je fait c'est que j'importe ce fichier dans une table temporaire qui contient les informations du fichiers plus d'autres informations venant de l'interface comme les dates. et puis je dois éclater ces informations sur les tables citées avant toute en gardant les relations .
    j'arrive a faire cela.le problème qui se pose c'est :
    par exemple après le 1er import on a :

    utilisateur(1,hex,david)
    voiture(2,05 hx 101)
    affectation_util_voiture(1,2,20/05/2008,20/05/2010)

    le 2ème fichier a importer a T2 :
    on a
    nom | prénom | matricule
    hex | davix |121 Hsd 2011

    je veux pouvoir vérifier les dates (qui sont entré manuellement) mais pour cette utilisateur avant d'effectuer des changement sur la date ou sur la voiture : par exemple si la nouvelle date saisie est inférieur a la date précédente garder la précédente sinon l'écraser avec la nouvelle. ce genre d'opérations
    J'espère que je me suis bien exprime
    Merci pour votre aide

  4. #4
    Membre habitué Avatar de bbl22
    Inscrit en
    Février 2009
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 114
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    JE ne sais pas avec quel SGBD tu travailles, tu peux faire des IF ou des CASE WHEN directement dans ta requête.
    par exemple : select liste_champs, case date_saisie<date1 then date1 ELSE date2 end as date from ta_table.

    Puis tu envoie tout ça dans ta nouvelle table.

    Si tu ne veux pas utiliser la requête tu peux faire cela dans le tMap avec une expression du genre ( case date_saisie<date1)? date1 :date2

    Merci
    bbl MeMa

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/04/2009, 03h12
  2. Mise jour des champs avec formulaires
    Par tetsuoo dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 09/09/2007, 20h35
  3. Réponses: 0
    Dernier message: 30/08/2007, 16h46
  4. mise a jour des colones avec smo
    Par casimir24 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/12/2005, 15h13
  5. Réponses: 3
    Dernier message: 15/11/2005, 18h50

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