Hi DBI users,

 

I encountered the following problem.

 

Scripts:

 

#!/usr/bin/perl -w

 

BEGIN {

   $ENV{ORACLE_HOME}    = 'oracle_home';

   $ENV{TWO_TASK}     = 'T:machine_name:db_name';

}

 

use strict;

use DBI;

 

my $user = "user_name";

my $passwd = "pass_word";

 

my $dbh =
DBI->connect("dbi:Oracle:host=host_name;sid=db_name;port=1521", $user,
$passwd)

  or die "Failed!\n$DBI::errstr\n";

 

my $sth = $dbh->do("BEGIN procedure; END;");

 

$dbh->disconnect;

 

exit 0;

 

Everything worked correctly when I ran the script as a *.pl file.  I
made a freestanding executable by using perlapp (v2.0).  The first time
I ran the executable and got "Can't locate DBD/Oracle.pm in @INC...."
So I added "use DBD::Oracle;" and ran the second time.  I got "Use of
uninitialized value in concatenation (.) or string at DBI.pm line 576.
Can't locate Win32/Registry.pm in @INC..."  I added "use
Win32::Registry;" and ran the executable the third time.  Only the "Use
of uninitialized value..." stayed.

 

Last time I got this message because the Oracle environment variables
were not set.  What is missing this time?  I believe something to do
with the freestanding executable.  Any ideas?

 

Thanks in advance.

Jeff

 

Reply via email to