LMPX.COM |
Home | Linux | Mysql | PHP | XML | ||
|
|
|||
From: Barbara Lindsey Date: Tue Jan 4 08:19:17 2005 Subject: RE: Oracle-Perl Connection Problem
I have my connect set up as follows:
DBI->connect("dbi:Oracle:xxx","yyy","zzz")
Where
"xxx" matches the name used in the tnsnames.ora file for the database
you are connecting to
"yyy" is the user
"zzz" is the password
Another suggestion is to use debugging as follows:
#!/usr/bin/perl -d
Run your script from the command line to debug. In this way you can
step into each of the modules and examine the variables to find what is
missing/wrong and exactly where the error is occurring. I found this
helpful when I was starting out with it.
Richard is right - once you get it going, it just plain works.
Cheers,
Barb
-----Original Message-----
From: Richard Foley [mailto:Richard.Foley@t-online.de]
Sent: Tuesday, January 04, 2005 9:04 AM
To: Sandeep Warikoo
Cc: oracle-oci@perl.org
Subject: Re: Oracle-Perl Connection Problem
There's a few things to look at:
Sometimes you need NLS_LANG (etc.) and several others set too.
LD_LIBRARY_PATH may be worth checking.
Have you upgraded this Oracle recently?
Can you connect using sqlplus?
Don't give up - once it works, it'll work forever ;-)
On Tuesday 04 January 2005 14:04, Sandeep Warikoo wrote:
> Hi Richards,
>
> Thanks for the help.
> I have checked all the environment variables. All are correctly set
> including TWO_TASK, ORACLE_SID, ORACLE_HOME. Still the problem
persists.
>
> here is my modified code:
> ----------------------------------------------------------------------
> --
> #!/usr/bin/perl
>
> use DBI;
>
> $ENV{TWO_TASK}="d7_bilab03";
> $ENV{ORACLE_HOME}="/data/oracle/product/9.2.0/";
> $ENV{ORACLE_SID}="dmc";
>
> $dbH = DBI->connect("dbi:Oracle:","hpbi_owner","hpbi") or die
> $DBI::errstr;
> ----------------------------------------------------------------------
> --
>
> d7_bilab03 is net alias for my database. It works well with tnsping.
> And I'm able to connect to database through "sqlplus
> hpbi_owner/hpbi@d7_bilab03"
>
> Sandeep
>
> Richard Foley wrote:
> >You usually need to have quite a few environment variables set before
> >you can access Oracle, as the error message (OCIEnvInit) roughly
indicates.
> > Try reading the docs that came with the DBI (and DBD::Oracle
> >particularly), I believe there are many examples in there.
> >
> >You are at least short of
> >
> > ORACLE_SID or TWO_TASK
> >
> >Ciao
> >Richard Foley
> >---
> >Ciao - Shorter than Aufwiedersehen
> >
> >http://www.oreilly.com/catalog/perldebugpr/index.html
> >
> >On Tuesday 04 January 2005 09:47, Sandeep Warikoo wrote:
> >>Hi,
> >>
> >>I'm trying the access oracle through perl, but am getting the error
> >>"ERROR OCIEnvInit".
> >>
> >>My perl script is:
> >>
> >>--------------------------------------------------------------------
> >>-----
> >>use DBI;
> >>
> >>$ENV{ORACLE_HOME}='/data/oracle/product/9.2.0';
> >>
> >>my $dbh = DBI->connect("dbi:Oracle:d7_bilab03","hpbi_owner","hpbi")
or
> >>die "couldn't connect to database: $DBI::errstr\n";
> >>
> >>--------------------------------------------------------------------
> >>-----
> >>-
> >>
> >>Does anyone know how to solve this?
> >>
> >>Regards,
> >>Sandeep W.
--
Ciao
Richard Foley
---
Ciao - Shorter than Aufwiedersehen
http://www.oreilly.com/catalog/perldebugpr/index.html
| Navigate in group perl.dbi.oracle-oci at sever nntp.perl.org | |
| Previous | Next |
| © No Copyright You are free to use Anything |
Site Maintained by PHP Developer
Powered By PHP Consultants |