i got an error while performing scd1 by using SID column that is mapped to native seq error is missing expression. i think select statement is not getting that sid column...any body help me to clear that
Please could you provide us the entire error message, the KM used, the mapping for the column you think is the problem and the generated SQL code from the failing step in your execution ?
i am trying to populate target table using scd1 using KM is ikm oracle incremental update.i am trying to map sid with some seq which is can be used as native sequence in ODI but i am getting error is below
ODI-1217: Session INF_SCD1 (196001) fails with return code 936.
ODI-1226: Step INF_SCD1 fails after 1 attempt(s).
ODI-1240: Flow INF_SCD1 fails while performing a Integration operation. This flow loads target table DIM_EMP_SCD1.
ODI-1228: Task INF_SCD1 (Integration) fails on the target ORACLE connection ORACLE_SERVER.
Caused By: java.sql.SQLSyntaxErrorException: ORA-00936: missing expression
note: but successfully populated to target when not used sequence(surrogate key) in my target.
Could you go on the operator, expand your execution, find the failing step, double click on it and click on the "Code" tab?
This generated SQL code might help us to find the error.
Did you define a Unique Key?
I had come accross the same error when I was trying to use the sequence as a key in my interface. It was resolved when I unchecked the Update behaviour and did not mark it as Key. I marked some other column as the key column.
Try it, might help.
Of course, the Unique Key cannot be define on your SK if it's populated by a sequence in this interface.
The unique key should be a column (or a set of column) that ODI can use to recognize which rows from the source already exists in the target.