On 6/23/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Hello, I am trying to write a perl script to connect to our DB2 database and do some basic SQL queries. But I'm having trouble with making everything play nice. I'm on WinXP, and did a manual build of DBI with Visual Studio's nmake. That all went fine (as far as I can tell). So I downloaded the DBD::DB2 module and unzipped it to my C:/Perl/lib directory (creating the blib directory from the use lib line below. Here's the code I'm trying to test it with...
Normally, you don't compile a module in the Perl install tree - you compile it some other place and install it into the tree. So, did you obtain a pre-compiled copy of DBD::DB2? If so, do you have the necessary support libraries installed? use lib 'c:/Perl/lib/blib/lib/Bundle'; I'm dubious in the extreme about this line (above). use DBI;
### Probe DBI for the installed drivers my @drivers = DBI->available_drivers(); die "No drivers found!\n" unless @drivers; # should never happen ### Iterate through the drivers and list the data sources for ### each one foreach my $driver ( @drivers ) { print "Driver: $driver\n"; my @dataSources = DBI->data_sources( $driver ); foreach my $dataSource ( @dataSources ) { print "\tData Source is $dataSource\n"; } print "\n"; } And here is the output: DBD::DB2 initialisation failed: Can't locate object method "driver" via package "DBD::DB2" at c:/Perl/site/lib/DBI.pm line 768. Perhaps the capitalisation of DBD 'DB2' isn't right. At C:..........dbQueryAutoBatch.pl line 33.
If you have a pre-compiled module, then I think your problem is the absence of DB2 Connect (IIRC) or its equivalent. If you don't have a pre-compiled module, then your problem is that you need to compile and install it - and compile it in any directory that is not underneath the Perl install directory hierarchy. Not sure if DBI or DBD::DB2 arne't right or I'm just calling something
wrong. But any help would be appreciated.
There's a chance I misinterpreting the symptoms - I'm not a DB2 expert. -- Jonathan Leffler <[EMAIL PROTECTED]> #include <disclaimer.h> Guardian of DBD::Informix - v2005.02 - http://dbi.perl.org "I don't suffer from insanity - I enjoy every minute of it."