Hi all!
I'm using DBD::DB2 to access remote DB2 database on an AS400 machine. I've
managed it to work from command line.
But when trying to connect to remote database from a mod_perl application the
$DBI::errstr is set to this:
>[iODBC][Driver Manager]Data source name not found and no default driver
>specified. Driver could not be loaded
What the hell is ODBC doing here?
This is the source of the Mason component:
-- DB2test.html
<%$DBI::errstr%>
DB2DIR <%$ENV{'DB2DIR'}%><br>
DB2INSTANCE <%$ENV{'DB2INSTANCE'}%><br>
INSTHOME <%$ENV{'INSTHOME'}%><br>
CLASSPATH <%$ENV{'CLASSPATH'}%><br>
LD_LIBRARY_PATH <%$ENV{'LD_LIBRARY_PATH'}%><br>
LIBPATH <%$ENV{'LIBPATH'}%><br>
<%INIT>
use DBI;
use DBD::DB2::Constants;
use DBD::DB2;
my $loc = setlocale( LC_ALL, "cs_CZ" );
my $dbstr = "dbi:DB2:as400tes";
my $dbuser = 'MLAUS';
my $dbpasswd = 'MLAUS';
my $dbh = DBI->connect($dbstr, $dbuser, $dbpasswd);
my $sql = "SELECT
SULNME,SUFNME FROM CABLEDTA.SUBSMSTR AS MAIN WHERE MAIN.SULNME LIKE 'LAU%'
ORDER BY MAIN.SULNME,MAIN.SUFNME ASC;";
</%INIT>
<%ARGS>
</%ARGS>
--
If I try to run the CLI version as normal CGI, it works. I'm sure the
environment is setup allright.
I'm running Apache 1.3.28, mod_perl 1.28, HTML::Mason 1.05, DBI 1.45, DBD::DB2
0.78.
Miroslav Laus