Update statement error in Teradata Multiload

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
iwin
Premium Member
Premium Member
Posts: 99
Joined: Mon Apr 11, 2005 9:20 pm

Update statement error in Teradata Multiload

Post by iwin »

Hi guys,
I am trying to update a table using the following SQL in multiload custom script. When i try the same SQL in Teradata Assistant it is working well but when i use the same in Datastage Multiload stage, i am getting an error
"08:47:43 UTY0805 RDBMS failure, 3538: A MultiLoad UPDATE Statement is Invalid."

update B
set
addr_typ = 'A'
where exists (select * from C
where B.customer_id = C.customer_id and
B.address_seq = C.address_seq and
B.contact_id = C.contact_id and
C.addr_typ = 'M');



All suggestion are welcome.
maffan76
Participant
Posts: 110
Joined: Tue Aug 23, 2005 5:27 am

Post by maffan76 »

the error says that in WHERE clause you are not mentioning the complete primary index columns die to which this query is causing problem or you are using any column which is part of PI or partition in update.
see the resolution below:

The WHERE condition, including any taken from a view definition, must allow for primary index access (and, if partitioned, partition access) with possible ANDed residual conditions. The list of updated fields must not include any column in the primary index or partitioning expression, and only one table may be referenced.

do share if you solve the problem and actual cause is different from the one mentioned in the resolution.

Hope this helps.
Regards,
Affan
"Questioning is Half Knowledge"
Post Reply