paragkalra has asked for the wisdom of the Perl Monks concerning the following question:

Hello All,

I was trying to fetch some rows from the Oracle database using DBI module. However there was 1 FLOAT column having a large value at one of the row.

While fetching that row it failed throwing error:

DBD::ODBC::st fetchrow_array failed: [Oracle][ODBC]Numeric value out of range.

How can I get rid of this error and successfully fetch all the rows?

Replies are listed 'Best First'.
Re: fetchrow_array failed
by mje (Curate) on Jan 19, 2010 at 11:26 UTC

    Are you sure it is the float column that is the problem? Have you tried removing the float out of the select list and does it work then?

    What platform are you running on and what version of Oracle's ODBC driver are you using?

    Can you create a table with only the problem column type in, one row containing the problem data then run a fetchrow_array with DBI tracing enabled at 15. How you enable tracing depends on your platform, it may be "export DBI_TRACE=15=x.log" or "set DBI_TRACE=15=x.log" see DBI docs. I've be very interested in the contents of that log file.