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

Home -> Community -> Usenet -> c.d.o.misc -> NLS_LANG SETTING IN THE REGISTRY (ORA-12705)

NLS_LANG SETTING IN THE REGISTRY (ORA-12705)

From: Fran?ois Bourdages <francois.bourdages_at_harfan.com>
Date: 25 Aug 2004 08:52:16 -0700
Message-ID: <92e05f1e.0408250752.688cdc79@posting.google.com>


HI,
We have two databases :
db1 : oracle entreprise 8.1.7.4 on windows 2000

      characterset : we8so8859p1

db2 : oracle entreprise 9.2.0.4 on windows 2000

      characterset : we8mswin1252

and lets say : one client
Client config : oracle 8.1.7

       nsl_lang in the registry : CANADIAN FRENCH_CANADA.WE8ISO8859P1

When the "client" try to connect to db1 : OK When the "client" try to connect to db1 : not working. (see below)

SQL> connect user/password_at_db1
Connected.
SQL> connect user/password_at_db2
ERROR:
ORA-00604: error occurred at recursive SQL level 1 ORA-12705: invalid or unknown NLS parameter value specified

Warning: You are no longer connected to ORACLE. SQL> I know tha we8iso8859p1 is a subset of we8mswin1252.

Question :
1) It is working fike in 8i. Why this is not working when i connect to a 9i database.
2. Why "Canadian French_Canada" in the NLS_LANG key cause a problem ? ( i know that Canadian french cause problem sometimes,...  but this is another debate....)

Tks for your answers...

Here are the NLS configuration of the two databse :

--**************
-- db1
--**************

SQL> select * from nls_database_parameters;
PARAMETER                      VALUE

------------------------------
----------------------------------------
NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_CURRENCY $ NLS_ISO_CURRENCY AMERICA NLS_NUMERIC_CHARACTERS ., NLS_CHARACTERSET WE8ISO8859P1 NLS_CALENDAR GREGORIAN NLS_DATE_FORMAT YYYY/MM/DD HH24:MI:SS NLS_DATE_LANGUAGE AMERICAN NLS_SORT BINARY NLS_TIME_FORMAT HH.MI.SSXFF AM NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZH:TZM NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZH:TZM NLS_DUAL_CURRENCY $ NLS_COMP BINARY NLS_NCHAR_CHARACTERSET WE8ISO8859P1 NLS_RDBMS_VERSION 8.1.7.4.1

SQL> select * from nls_instance_parameters;

PARAMETER                      VALUE

------------------------------
----------------------------------------
NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_SORT NLS_DATE_LANGUAGE NLS_DATE_FORMAT YYYY/MM/DD HH24:MI:SS NLS_CURRENCY NLS_NUMERIC_CHARACTERS NLS_ISO_CURRENCY NLS_CALENDAR NLS_TIME_FORMAT NLS_TIMESTAMP_FORMAT NLS_TIME_TZ_FORMAT NLS_TIMESTAMP_TZ_FORMAT

NLS_DUAL_CURRENCY
NLS_COMP SQL> select * from nls_session_parameters;
PARAMETER                      VALUE

------------------------------
----------------------------------------
NLS_LANGUAGE CANADIAN FRENCH NLS_TERRITORY CANADA NLS_CURRENCY $ NLS_ISO_CURRENCY CANADA NLS_NUMERIC_CHARACTERS , NLS_CALENDAR GREGORIAN NLS_DATE_FORMAT YYYY/MM/DD HH24:MI:SS NLS_DATE_LANGUAGE CANADIAN FRENCH NLS_SORT CANADIAN FRENCH NLS_TIME_FORMAT HH24:MI:SSXFF NLS_TIMESTAMP_FORMAT RR-MM-DD HH24:MI:SSXFF NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZH:TZM NLS_TIMESTAMP_TZ_FORMAT RR-MM-DD HH24:MI:SSXFF TZH:TZM NLS_DUAL_CURRENCY $ NLS_COMP BINARY --****************************************************************************
-- db2
-- note : I change nls_lang for america_america.we8iso8859p1 in the registry
-- to be able to see the database and instance config.
--****************************************************************************
SQL> select * from nls_database_parameters;
PARAMETER                      VALUE

------------------------------
----------------------------------------
NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_CURRENCY $ NLS_ISO_CURRENCY AMERICA NLS_NUMERIC_CHARACTERS ., NLS_CHARACTERSET WE8MSWIN1252 NLS_CALENDAR GREGORIAN NLS_DATE_FORMAT DD-MON-RR NLS_DATE_LANGUAGE AMERICAN NLS_SORT BINARY NLS_TIME_FORMAT HH.MI.SSXFF AM NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR NLS_DUAL_CURRENCY $ NLS_COMP BINARY NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCP FALSE NLS_NCHAR_CHARACTERSET AL16UTF16 NLS_RDBMS_VERSION 9.2.0.4.0

SQL> select * from nls_instance_parameters

PARAMETER                      VALUE

------------------------------
----------------------------------------
NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_SORT NLS_DATE_LANGUAGE NLS_DATE_FORMAT NLS_CURRENCY NLS_NUMERIC_CHARACTERS NLS_ISO_CURRENCY NLS_CALENDAR NLS_TIME_FORMAT NLS_TIMESTAMP_FORMAT NLS_TIME_TZ_FORMAT NLS_TIMESTAMP_TZ_FORMAT NLS_DUAL_CURRENCY NLS_COMP NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCP FALSE

SQL> select * from nls_session_parameters (here is with the one working....)
with canadian french_canada, i cannot connect.

PARAMETER                      VALUE

------------------------------
----------------------------------------
NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_CURRENCY $ NLS_ISO_CURRENCY AMERICA NLS_NUMERIC_CHARACTERS ., NLS_CALENDAR GREGORIAN NLS_DATE_FORMAT YYYY/MM/DD HH24:MI:SS NLS_DATE_LANGUAGE AMERICAN NLS_SORT BINARY NLS_TIME_FORMAT HH.MI.SSXFF AM NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZH:TZM NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZH:TZM NLS_DUAL_CURRENCY $ NLS_COMP BINARY NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CONV_EXCP FALSE
Received on Wed Aug 25 2004 - 10:52:16 CDT

Original text of this message

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