|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 217 ![]() |
Bonjour
Je dois remplacer les ID d'une table c'est un peu compliquer à expliquer. Donc j'ai deux bases de données (sql sever) on va dire base A et B. de la base A j'ai inséré dans la base B tous les clients seulement dans la base B les ids sont re-générer. cela veut dire que si maintenant j'insère les produits des clients de la base A vers la B ben il ne corresponde plus à rien dans B. En insèrent les clients dans la base B j'ai enregistrer les anciens id des clients de la base A dans une colonne. Mais maintenant en insérant les produits de la base A vers B je voudrais remplacer les id des clients par les nouveaux id. Code :
Code :
Seulement avec talend je ne sais pas comment je dois faire cela. Soit faire avec un tmap et du sql mais je c'est pas si on peut. ou alors executer directement un script sql avec jointure etc. Mais je ne c'est pas comment exécuter des scripts sql et comment faire des jointures sur les tables dans talend. merci d'avance. |
||||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : février 2009 Messages : 114 ![]() |
Bjr,
Effectivement, c'est un peut flou, personnellement, je n'ai pas très bien compris, pourrais-tu expliciter ton exemple avec ce que tu as dans tes deux tables et ce que tu souhaiterai obtenir dans ta base B. Si j'ai compris, tu souhaite mettre à jour le champ id_client de la table produit en fonction du champ id de la table client? Mais je ne comprends pas d'où vient les id 4E3,FRT.. dans la table produit. Si l'on suppose que ces ids sont les mêmes dans la base A pour la table produit, tu pourrais faire : voici doc ci-joint
__________________
bbl MeMa |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 217 ![]() |
Oui je sais c'est un peu dur à expliquer.
Enfaite dans la base A il y a des id qui sont auto-incrementer, j'ai mis 4,5 dans la table client pour pas remettre 1,2. Jusque la normal il y a une table client une table produit avec un id_client pour la table produit qui permet de retrouver le client liée au produit. Mais quand j'insère (copie) les données dans la table B les IDs sont générer automatiquement c'est pour ça que au lieu d'avoir dans la table client 4, 5 j'ai mit 12Z, 7TR pour les clients et 4E3, FRT, YUY pour les IDs produits. Seulement comme les ids sont générer automatiquement les id_client de la table produit (4,5,4) de la base A, ne sont plus bon pour la base B. C'est cela que je veux faire quand j'insère les produits dans la base B remplacer les id_client de la table produit de la base A par les nouveaux 12Z, 7TR, 12Z et ceci grâce a la colonne id_clientA qui correspond à l'ancien id du client de la base A. J'espere que cela est plus clair maintenant. Merci pour l'aide |
|
|
00
|
|
|
#4 | ||
|
Membre habitué
![]() Inscription : février 2009 Messages : 114 ![]() |
je suis désolée, je ne vois pas comment tu peux faire ton update alors que tu n'as pas aucun lien entre les deux tables. Tu aurais eu un Id commun, tu aurais fait:
Code :
Quelqu'un pourrais peut être avoir une autre idée. Bon courage
__________________
bbl MeMa |
||
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 217 ![]() |
Je comprend pas trop ou est l'id qui manque selon toi?
Non les deux exister déjà. |
|
|
00
|
|
|
#6 | ||
|
Membre habitué
![]() Inscription : février 2009 Messages : 114 ![]() |
Ok, dans ce ca là, si les deux tables on un ID en commun, tu applique cette requête d'update après ton insert dans un tBaseRow:
Code :
__________________
bbl MeMa |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com