Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: NLS with 8i(8.1.7) Solaris - Help

Re: NLS with 8i(8.1.7) Solaris - Help

From: Dirk Kiehne <dirk_at_liberate.com>
Date: Wed, 29 Aug 2001 17:18:35 GMT
Message-ID: <3B8D2477.3EB5DF56@liberate.com>


Galen Boyer wrote:
>
> On Tue, 28 Aug 2001, dirk_at_liberate.com wrote:
>
> >> Do I need to explicitly set NLS_LANGUAGE, NLS_TERRITORY
> >> and NLS_CHARACTERSET in initORCL.ora, even though they were
> >> set in the environment and during DB creation ?
>
> NLS_LANGUAGE and NLS_TERRITORY aren't referenced in a create DB
> statement while NLS_CHARACTERSET is.
>
> If you set them in your initORCL.ora, they should

They are now explicitly set in initORCL.ora.

>
> >> The client data (Korean Windows machine) is apparently using
> >> KO16MSWIN949. Can this be forced into KO16KSC5601, which I
> >> used to create the DB ?
>
> You should set the client to have the particular environmental
> variable set.

This is fixed now; either I switched it during DB creation or the developer managed to change it.

>
> >> Does the 8.1.7.1b patch address some of these issues if this
> >> is not my problem ?
>
> I have no clue.
>
> >> Using jdbc thin driver to put data into the DB, do we set
> >> the environment variables for jdbc, since we go from Windows
> >> machine to server(jdbc thin) to Oracle ?
>
> I believe jdbc requirements are the same, set the environmental
> variables.

Looking at this now. We have a wrapper script and there is the opportunity to set env. variables if need be.

>
> > OK, I've solved part of the issues. It appears that someone
> > (read developer) changed one of the 'CHARACTERSET' variables.
> > I've recreated the DB with both set to the same thing now.
> >
> > I still get NLS_LANGUAGE and NLS_TERRITORY set to AMERICAN
> > and AMERICA even though they are set to KOREAN and KOREA
> > in my environment variables. I tried to set them explicitly
> > in initORCL.ora but a query of nls_database_parameters still
> > shows AM... (???)
>
> If you query nls_instance_parameters, you should find the
> initORCL.ora parameter settings that you set in the initORCL.ora
> file, so I think you are okay.

Yep, nls_instance_parameters shows just two variables set: NLS_LANGUAGE and NLS_TERRITORY; everything else is blank.

>
> The question I have is what are the two different views telling
> us?
>
> Are the database parameters set at database creation time,
> and therefore all of the nls variables other than
> nls_character_set are set at creation time? How does Oracle
> determine the rest of the variables settings?
>
> How do the nls_instance_parameters interact with the
> nls_database_parameters. Do the nls_instance_parameters
> override the nls_database_parameters like the environmental
> parameters override the database and instance parameters?G

After doing several searches on technet I found three tables that have a bearing on this: nls_instance_parameters, nls_database_ parameters and nls_session_parameters. The "instance" table just has the two variables (NLS_LANGUAGE, NLS_TERRITORY) filled in with everything else blank. The "database" table has everyhting right except (NLS_LANGUAGE, NLS_TERRITORY) and the "session" table has everything right.

Just checked another machine, where NLS_LANGUAGE and NLS_TERRITORY are not explicitly set: the "instance" table has these two variables set to AMERICAN and AMERICA, with everything else blank.

It looks like nls_session_parameters is the determining factor. I'll have to read into this more as soon we work out the jdbc to DB connection.

>
> --
> Galen Boyer
> It seems to me, I remember every single thing I know.

Thanks for the help/input,
-Dirk Received on Wed Aug 29 2001 - 12:18:35 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US