Page 1 of 1

ODBC ISSUE(Datetime field overflow)

Posted: Fri Aug 01, 2014 8:21 am
by pkll
Hi All,

I am getting below error message

Code: Select all

ODBC_Connector_49,0:ODBC function "SQLExecute" reported: SQLSTATE = 22008: Native Error Code = 0: Msg = [IBM (DataDirect OEM)][ODBC SQL Server Driver]Datetime field overflow (CC_OdbcStatement::executeinsert,file CC_OdbcDBStatement.cpp,line 812)

My source Sequential file and populating all columns into Target ODBC Stage. Here I am doing one to one mapping only.

In this job after loaded 4000 records job is aborting.

Could you please suggest me why job is aborting?

Thanks for Advance Help!!!

Posted: Fri Aug 01, 2014 8:43 am
by priyadarshikunal
are you getting any other error or warning? Please also mention which 8.x version you are on. and yes, SQL server version.

Posted: Fri Aug 01, 2014 11:05 am
by pkll

Code: Select all

ODBC_Connector:Execute failed on statement INSERT INTO dbo.Tablename
(ALL Column Names) VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
I am getting above warning message and i am using Data Stage 9.1 & SQL server 2008!!!

Posted: Fri Aug 01, 2014 8:43 pm
by qt_ky
This page suggests your date value may be out of range from what SQL Server can handle.

http://knowledgebase.progress.com/artic ... le/P186037

Posted: Sun Aug 03, 2014 5:15 pm
by ray.wurlod
Microsoft does not believe that any other dates than those mentioned in the referenced article exist!

Posted: Sun Aug 03, 2014 5:47 pm
by chulett
Interesting... so nothing before 1753, eh? :?

Posted: Mon Aug 04, 2014 3:40 am
by pkll
Thanks Eric,

Right now it is working fine .In my date field three values are coming before 1753.
After I wrote constrain in Transformer Stage it is working fine.


Thanks for all replies!!!

Posted: Mon Aug 04, 2014 5:36 am
by priyadarshikunal
My first guess was microseconds, but seems Microsoft is too confident about the year 1753. I wonder though how it arrived at 1753.


On other note for the OP, check if the dates prior to 1753, what you are getting from source are not default low values like 01/01/0001 or something like that. If that is the case, you can replace them with some new default low date, say 01/01/1753. Depends on the requirement though.