Possible DBD::DB2 driver bug?
From: Sean C Peters (speters_at_wiredata.com)
Date: 06/29/04
- Next message: John Moon: "DBI & DBD::Oracle"
- Previous message: Scott T. Hildreth: "Re: Changing driver from OCI8 to OCI7 driver for DBI"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
To: dbi-users@perl.org Date: Tue, 29 Jun 2004 11:45:27 -0500
HI all,
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
error:
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
eval{}
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.
thanks much,
Sean Peters
speters@wiredata.com
- Next message: John Moon: "DBI & DBD::Oracle"
- Previous message: Scott T. Hildreth: "Re: Changing driver from OCI8 to OCI7 driver for DBI"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|