RE: Problem with connecting to an Oracle database using Perl
From: Ron Reidy (Ron.Reidy_at_arraybiopharma.com)
Date: 01/19/05
- Next message: Amonotod: "RE: Double quotes in select statement throw an error"
- Previous message: Jeff Urlwin: "RE: Double quotes in select statement throw an error"
- Maybe in reply to: Charles Lawrence: "Problem with connecting to an Oracle database using Perl"
- Next in thread: Graeme St. Clair: "RE: Problem with connecting to an Oracle database using Perl"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Wed, 19 Jan 2005 08:24:46 -0700 To: "Charles Lawrence" <charles.lawrence@swifttel.net>, <dbi-users@perl.org>
Your environment is not correct, specifically ORACLE_HOME and maybe the NLS vars. I would look at the DBD::Oracle docs. They have information on env vars and how to connect.
-----------------
Ron Reidy
Lead DBA
Array BioPharma, Inc.
-----Original Message-----
From: Charles Lawrence [mailto:charles.lawrence@swifttel.net]
Sent: Tuesday, January 18, 2005 12:55 PM
To: dbi-users@perl.org
Subject: Problem with connecting to an Oracle database using Perl
Gentlemen:
I have struggled with this problem for a while now with no success at
finding the answer, so I am asking for help from anyone who might know
the solution.
I am using Windows XP, ActiveState Perl 5.8.4, Oracle 9.2.0.1.0 client
and server, DBI (1.45) and DBD-Oracle (1.16) installed as ppm packages
from ftp.esoftmatic.com/outgoing/DBI/5.8.4/
I do not have a problem connecting to the remote database using the
Oracle Enterprise Manager program from my PC. However, I am getting the
following error when I try to connect to the database from perl:
DBI connect('host=10.1.10.61;sid=ssdb','system',...) failed: ERROR
OCIInitialize. Check ORACLE_HOME and NLS settings etc. at
D:\PerlScripts\ora1.
pl line 17
Unable to connect to database: ERROR OCIInitialize. Check ORACLE_HOME
and NLS settings etc.
My perl script is:
#!/usr/bin/perl
use strict;
use DBI;
use DBD::Oracle qw(:ora_session_modes); # ORA_SYSDBA & ORA_SYSOPER
constants
my ($dsn,$usr,$pwd);
my ($dbh);
$ENV{NLS_LANG} = 'american';
$ENV{ORACLE_HOME} = 'D:\Oracle\ora92';
# connect to remote Oracle DB
$dsn='DBI:Oracle:host=10.1.10.61;sid=ssdb';
$usr='system';
$pwd='manager';
$dbh = DBI->connect($dsn,$usr,$pwd) || die "Unable to connect to
database: $DBI::errstr\n";
I have used NLS_LANG settings of 'american_america.we8iso8859p1' and
'american_america.utf8' to no avail. I know the ORACLE_HOME to be
correct. I cannot figure out why I am getting the OCIInitialize error.
Any help will be greatly appreciated. Thanks in advance.
Charles Lawrence
charles@swifttel.net
This electronic message transmission is a PRIVATE communication which contains
information which may be confidential or privileged. The information is intended
to be for the use of the individual or entity named above. If you are not the
intended recipient, please be aware that any disclosure, copying, distribution
or use of the contents of this information is prohibited. Please notify the
sender of the delivery error by replying to this message, or notify us by
telephone (877-633-2436, ext. 0), and then delete it from your system.
- Next message: Amonotod: "RE: Double quotes in select statement throw an error"
- Previous message: Jeff Urlwin: "RE: Double quotes in select statement throw an error"
- Maybe in reply to: Charles Lawrence: "Problem with connecting to an Oracle database using Perl"
- Next in thread: Graeme St. Clair: "RE: Problem with connecting to an Oracle database using Perl"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|