One Star

Insert else Update(Update Strategy)

Hi
I am basically trying to insert a record if not present in target else update it based on some key columns.
After reading through in this forum i noticed tMap is right component to achieve it.
In Tmap ---> Row1 -------------------------- |---If Match -----------------Update(Settting ?)
| | Inner Join--
----> Row 2(lookup target table) --- |-- Else(Reject records) ---Insert(Setting ?)
My target table is MYSQL table with the primary key set as AutoIncrement(Sequence Generator for new key records inserted)
My Question is
1) where do we specify/set the action(update,insert) for the two output flows from tMap?
2) Where do we specify the Target Load Order(In which order the target tables to be loaded?)
Something like DD_UPDATE,DD_INSERT settings we use in Update Strategy Transformation in Informatica for these kind of scenarios.
If someone can share the settings info it would be great since i am in the process of learning Talend Tool.
Thanks
Ramki
2 REPLIES
One Star

Re: Insert else Update(Update Strategy)

Depending on whether or not you want to update all fields when finding a match, you could just use the Action On Data setting in the tMySQLOutput adn choose one of the following settings:
Insert or Update
Insert or Update on duplicate key or unique index
Update or Insert
And for the next inevitable question: Smiley Happy
http://talendforge.org/forum/viewtopic.php?id=2305
One Star

Re: Insert else Update(Update Strategy)

Thank you.So basically we will have two outputs flows to tMYSQLOUTPUT from tMAP one for Insert and another for Update.
And we will need to set the Action on data as Insert and Update respectively.
But for my second question the forum link you have given does not answer it.
Where is the option available to set the target Load Order if we have mutiple targets from a single flow
Thanks
Ramki