Possible DBD::DB2 driver bug?
From: Sean C Peters (speters_at_wiredata.com)
To: email@example.com Date: Tue, 29 Jun 2004 11:45:27 -0500
I have run into a strange problem using the DBD::DB2 drivers.
Running a SELECT query thats grabs some data that includes a column defined as
DECIMAL(14). When the $handle->fetchrow_array() occurs, we get the following
DBD::DB2::st fetchrow_array failed: IBMCLI DriverDB2/SUN64 SQL0413N Overflow
occured during numeric data type conversion. SQLSTATE=22003
If RaiseError is not set on the DB handle, i can trap the error by checking
the value of $DBI::err, but if RaiseError is set, i cant trap the error with
I have almost no experience with DBI::DB2 (i usually use DBI::MySQL), so i may
not fully understand whats happening.
I believe that its in the translation from the DECIMAL(14) to a perl string.
I say this because: Reading O'Reilly's Programming the Perl DBI, in Appendix
B, section DBD::DB2 (page 246 in my copy), the statement "Notice that DB2
supports numbers outside the typicalvalid range for perl numbers. This isn't
a major problem because DBD::DB2 always returns all numbers as strings."
Please let me know if you need more information, i'll see what i can get.
I am not subscribed to this list, so please respond personally.