Page 1 of 1

Update error

Posted: Sun Apr 17, 2005 2:24 pm
by Jay
Hi All,

I am getting this error while updating a Oracle 8.1 table


Terminate.terminate,0: Open failed for update. Update is: UPDATE
schemaName.EMPLOYEE
SET
END_DT = :END_DT, POST_DTS = :POST_DTS
WHERE
(EMPLOYEE_NBR = :EMPLOYEE_NBR)
sqlcode is: -1475
esql complaint: ORA-01475: must reparse cursor to change bind variable datatype

I checked the datatypes and they are ok...

Any ideas in which direction i have to proceed...

Thanks in advance
Jay

Posted: Mon Apr 18, 2005 2:47 am
by Sainath.Srinivasan
If it is a server job, you must be using '?' or :n as placeholders and not the field name prefix with colon.

Posted: Mon Apr 18, 2005 5:27 am
by ray.wurlod
What Sainath is saying is that you require a statement of the form

Code: Select all

UPDATE 
schemaName.EMPLOYEE 
SET 
END_DT = :2, POST_DTS = :3
WHERE 
(EMPLOYEE_NBR = :1) 
for Oracle, or

Code: Select all

UPDATE 
schemaName.EMPLOYEE 
SET 
END_DT = ?, POST_DTS = ?
WHERE 
(EMPLOYEE_NBR = ?) 
for ODBC and most other databases.

Posted: Mon Apr 18, 2005 3:05 pm
by Jay
Its a PX job.

I fixed it. But i am not convinced by the solution .

I had to update all the columns instead of the listed 3.

So the target had all 17 columns. The job ran fine. But i dont know how this change affected it.

I had ran it some time back(1 month) with update to the 3 columns.

Thanks
Jay