This works fine. Thanks Tim.
Apparently NULL in SELECT is the trouble maker here. Once i removed that it worked fine.
Now i'm in a process of repeating the same for column_info( ) , primary_key_info( ) as well.
Ravi
Tim Bunce wrote:
On Thu, Jun 10, 2004 at 09:57:16AM -0700, Ravi Kongara wrote:
I could pin-point the cause of this problem. The Oracle DBD driver's sql statement is selecting
*NULL* value for TABLE_CAT, as this is not applicable for Oracle. This NULL value in SELECT stmt
is throwing up the mysterious error code (65285). When i searched thru blogs, came to know that others
also had similar error when they tried to select NULL in PeopleSoft related application.
They could overcome this problem by changing NULL to ' ' (space ).
I think we don't have that privilege here to alter SELECT stmt, as it's issued by driver.
What else can be done.?
Hack the driver source if you can. If you can't then, well this is Perl, so you can... just copy the relevant method (table_info() in this case, as that's what tables() uses) into your own code:
use DBD::Oracle; # load the original code sub DBD::Oracle::db::table_info { # replace the method ... hacked copy of code from Oracle.pm }
Tim.
