Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/04/2011, 10h58   #1
Invité régulier
 
Inscription : novembre 2008
Messages : 27
Détails du profil
Informations personnelles :
Âge : 23
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : novembre 2008
Messages : 27
Points : 6
Points : 6
Par défaut Mise à jour de bases de données

Bonjour,

je suis un débutant sur Talend OS,
mon problème et que j'ai deux activeCollab (donc sur deux bases mySQL) la structure est presque semblable, je dois assigner toutes les données de l'ancienne sur la nouvelle au même projet (archive 2010). Cependant j'ai compri le principe de Tmap pour "mapper" mes données, mais j'ai besoin de ne pas écraser les données de la nouvelle base..

Il faudrait que je récupère le "last id" de la nouvelle base et que je commence mes insertions à cette id + 1.

Comment faire ?


Merci pour vos réponses !
openlife est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2011, 14h03   #2
Membre habitué
 
Avatar de bbl22
 
Inscription : février 2009
Messages : 114
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 114
Points : 112
Points : 112
Bonjour,

tu as plusieurs façon de procéder :
1. tu fait un Tmap dans laquelle tu fais une jointure Interne entre ton ancienne table et ta nouvelle table, tu coches sur la flèche violette, qui elle va te permettre de récupérer uniquement les infos qui n'existent pas dans ta nlle table, tu stocke tout dans une table temporaire que tu pourras suppimer après, puis tu insère le tout (Action sur la table = Aucun, Action sur le données = Inserer).

2. Il existe un composant mysql nommé : tMysqlLastInsertID, avec ce dernier, tu peux récupérer ton dernier Id insérer dans ton ancienne table, tu fait ta requête depuis cette table du genre :
Code :
SELECT * FROM ancienne_table WHERE id >id_recupérer
.
Puis tu envoie tout dans dans la nouvelle (pas besoin de faire le tMap si aucune transformation n'est effectuée) et pareil : Action sur la table = Aucun, Action sur le données = Inserer

Il ya plusieurs façon de faire, ou tu stock à chaque fois ton lastId dans une table, ou un fichier, ...

J'espère que ceci aidera
__________________
bbl MeMa
bbl22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2011, 12h37   #3
Invité régulier
 
Inscription : novembre 2008
Messages : 27
Détails du profil
Informations personnelles :
Âge : 23
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : novembre 2008
Messages : 27
Points : 6
Points : 6
Merci !
je vais tester ces solutions dans la semaine
openlife est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h33.


 
 
 
 
Partenaires

Hébergement Web