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 27/12/2010, 15h52   #1
Invité de passage
 
Inscription : janvier 2006
Messages : 15
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : janvier 2006
Messages : 15
Points : 1
Points : 1
Envoyer un message via MSN à lusitano11
Par défaut Récupérer la valeur d'une séquence

Bonjour,

Je découvre talend en ce moment, et l'exercice que j'aimerai réaliser est le suivant.

J'ai une base de données oracle avec un séquence que j'aimerai récupérer dans ma base de données postgresql.

Comment pourrais-je m'y prendre?

Quelqu'un aurait une proposition?

J'ai pensé utiliser une variable de context, mais avec quel composant setter la variable puis la récupérer?

Merci d'avance
lusitano11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2010, 00h19   #2
Rédacteur/Modérateur
 
Avatar de CyberChouan
 
Homme Benoît Courtine
Directeur technique
Inscription : janvier 2007
Messages : 2 744
Détails du profil
Informations personnelles :
Nom : Homme Benoît Courtine
Âge : 29
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2007
Messages : 2 744
Points : 4 202
Points : 4 202
Envoyer un message via MSN à CyberChouan
Pour récupérer la valeur de ta séquence, tu peux utiliser un tOracleRow : ce composant te permet d'exécuter la requête de ton choix. En particulier, tu peux écrire

Code :
SELECT ta_sequence.currval FROM dual;
Note : tu peux également utiliser cette requête dans un tOracleInput (et ça sera d'ailleurs plus facile à manipuler) :
  • En sortie du tOracleRow, tu récupéreras un ResultSet dont tu devras extraire la donnée qui t'intéresse.
  • En sortie du tOracleInput, tu récupérera directement un entier.

Pour injecter la valeur courante de cette séquence dans une séquence PostgreSQL, le tPostgreSqlRow me paraît tout indiqué mais je ne connais pas la requête à appliquer (une recherche Google devrait t'orienter).
__________________
Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
Mes articles et tutoriaux & Mon blog informatique
CyberChouan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2011, 21h08   #3
Invité de passage
 
Inscription : janvier 2006
Messages : 15
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : janvier 2006
Messages : 15
Points : 1
Points : 1
Envoyer un message via MSN à lusitano11
Merci beaucoup pour ta réponse !

Je vais tout de suite essayer !

Bonne année aussi

Merci
lusitano11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 11h27   #4
Invité de passage
 
Inscription : janvier 2006
Messages : 15
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : janvier 2006
Messages : 15
Points : 1
Points : 1
Envoyer un message via MSN à lusitano11
Bonjour,

J'ai créé mon job avec les différents composant.

Par contre je ne sais pas comment récupérer la valeur (value) dans ma requête :

Code :
SELECT setval('ma_sequence', value);
Mon job en pièce en jointe...
Est-ce comme ça que tu proposais ?

Merci
Images attachées
Type de fichier : png Capture d’écran 2011-01-04 à 11.08.34 AM.png (18,9 Ko, 9 affichages)
lusitano11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 11h56   #5
Invité de passage
 
Inscription : janvier 2006
Messages : 15
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : janvier 2006
Messages : 15
Points : 1
Points : 1
Envoyer un message via MSN à lusitano11
Re,

J'ai simplifié mon job et j'y suis parvenu (pièce jointe)

Voici la reuqête :
Code :
SELECT SETVAL('hibernate_sequence', "+row1.value+");
Merci !!
Images attachées
Type de fichier : png Capture d’écran 2011-01-04 à 11.53.40 AM.png (15,9 Ko, 19 affichages)
lusitano11 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 10h07.


 
 
 
 
Partenaires

Hébergement Web