DBD ingres doesn't appear to support DBI->data_sources($drv), or at least
return any useful info.  Is this true ?
Cheers, mark.

-----Original Message-----
From: Schoenenberger Peter [mailto:[EMAIL PROTECTED]]
Sent: 25 January 2002 15:06
To: [EMAIL PROTECTED]
Subject: $ENV{NLS_LANG} inside program is ignored


Hello

I have installed 
ActivePerl Build 623       perl, v5.6.0 built for MSWin32-x86-multi-thread
DBD-Oracle       [1.06   ] Oracle database driver for the DBI module
DBI              [1.14   ] Database independent interface for Perl
on a WinNT platform

The Oracle NLS parameter NLS_LANG is set properly in the registry. If I want
to override it inside the script (because I have to connect to another
database with another character set), the connect is established with the
parameter settings in the registry ignoring the new settings. If I set the
parameter in the shell ('set NLS_LANG=...') before starting the script the
connection is established with parameter settings of the shell.
In perl v5.0 it was possible to set the parameter inside the script.

Does anyone know why the parameter is now ignored?

Thanks
Peter

------------------------------------------------------------
Begin code fragment
------------------------------------------------------------
use strict;
use DBI;

# NLS parameter is set in the registry as follows
# 'AMERICAN_AMERICA.WE8ISO8859P1';

# Following setting of the parameter is ignored
$ENV{NLS_LANG}='AMERICAN_AMERICA.US7ASCII'; 

my $db = 'SAP_DB';
my $dbuser = 'dbuser';
my $pwd = 'password';
my $dbh;

$dbh = DBI->connect(
  "dbi:Oracle:$db",
  $dbuser,
  $pwd,
  {
    RaiseError => 0,
    PrintError => 1,
    AutoCommit => 0
  }
);

$sth_sel_names = $dbh->prepare( q{
  select ID, name
  from persons
});

# fetch will return characters in WE8ISO8859P1 character set 
# instead of US7ASCII
#
------------------------------------------------------------
End Code fragment
------------------------------------------------------------


**********************************************************************
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.

**********************************************************************

Reply via email to