Invalid Precision Error in parameter
Posted: Tue May 05, 2009 6:50 am
We are running a parallel job which loads data from oracle database to oracle database. We have not used any transformations anywhere.The job is aborting with the folowing error.
"APT_CombinedOperatorController(0),2:[Data Direct][ODBC Wire Protocol Driver] Invalid Precision Value. Error in Parameter 9".
We replaced the target ODBC stage with Dynamic RDBMS stage and ran the job. Now, we are receiving the warning for timestamp columns as below
"[DataDirect][ODBC Oracle Wire Protocol driver]Timestamp parameters with a scale, must have a scale less than ten and a precision equal to 20 plus the scale. You specified a precision of 19 and scale of 3. Error in parameter 14."
It shows that the precision is 19 and scale is 3, even though we did not define any scale value in the datastage or in the table definition. We created the table using SQL developer in Oracle database, with the data type as DATE, which translates to timestamp (19).
One more strange issue is that the data for all the columns in the target is truncated, i mean, the last character is truncated no matter what the length of the column is in the database. For example, if we give the value "DUMMY" for a particular column, it is inserted as "DUMM". If we manually fire an insert query using SQL developer in the database, the data is populated correctly. We are not able to get any clues. We have tried using datasets and all the values are loaded correctly. But we have other similar jobs which run perfectly fine without any issues.
Any inputs on getting rid of this problem will be really appreciable.
Regards,
Mourya
"APT_CombinedOperatorController(0),2:[Data Direct][ODBC Wire Protocol Driver] Invalid Precision Value. Error in Parameter 9".
We replaced the target ODBC stage with Dynamic RDBMS stage and ran the job. Now, we are receiving the warning for timestamp columns as below
"[DataDirect][ODBC Oracle Wire Protocol driver]Timestamp parameters with a scale, must have a scale less than ten and a precision equal to 20 plus the scale. You specified a precision of 19 and scale of 3. Error in parameter 14."
It shows that the precision is 19 and scale is 3, even though we did not define any scale value in the datastage or in the table definition. We created the table using SQL developer in Oracle database, with the data type as DATE, which translates to timestamp (19).
One more strange issue is that the data for all the columns in the target is truncated, i mean, the last character is truncated no matter what the length of the column is in the database. For example, if we give the value "DUMMY" for a particular column, it is inserted as "DUMM". If we manually fire an insert query using SQL developer in the database, the data is populated correctly. We are not able to get any clues. We have tried using datasets and all the values are loaded correctly. But we have other similar jobs which run perfectly fine without any issues.
Any inputs on getting rid of this problem will be really appreciable.
Regards,
Mourya