Could you guys look at 21nchars.t or sub print_nls_info in
30long.t.
I do not think it is a good idea to select from V$ tables: many users
are not granted permission to see select from those. I have not checked
8i, but in 9i a safe way to to this is to select from
NLS_DATABASE_PARAMETERS, as in
my $sth = $dbh->prepare( "select PARAMETER,VALUE from
NLS_DATABASE_PARAMETERS where PARAMETER like ?" );
$sth->execute( '%CHARACTERSET' );
$ENV{NLS_LANG} should give you the client NLS environment.
Lincoln
On Fri, 2004-03-19 at 16:37, Andy Hassall wrote:
> > On Fri, Mar 19, 2004 at 05:28:42PM -0000, Andy Hassall wrote:
> >>
> >>> might be better to add a ora_nls_parameters() method using:
> >>>
> >>> and then implement ora_can_unicode() in terms of
> >>> $dbh->{ora_nls_parameters}
> >>>
> >>> If that sounds good to you could you rework it that way?
> >>
> >> OK - will do.
> >>
> > ora_nls_parameters() could default to caching and take a param to
> > force an update of the cache.
>
> Updated patch attached.
>
> These changes cover the server - does there need to be something to cover
> the client settings, e.g. examine NLS_LANG at connect time (either
> environment variable, or from registry on Windows) to check if the client is
> using Unicode?
>
> thanks,