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: Changing NLS_LANGUAGE/TERRITORY

Re: Changing NLS_LANGUAGE/TERRITORY

From: Harald Henkel <H.Henkel_at_GS-automation.DE>
Date: Wed, 28 Nov 2001 09:52:07 +0100
Message-ID: <3C04A5B7.19313C7F@GS-automation.DE>


Hello Vincent.

Sorry, I didn't explain the problem well enough, I guess.

On Import I receive these error messages:

[Export file created by EXPORT:V08.00.05 via conventional path] (translated by me)
IMP-00069: could not convert to environment national character set's handle
IMP-00021: operating system error - error code (dec 2, hex 0x2) IMP-00000: import terminated unsuccessfully

Maybe, the problem is that I edited the Export file to change the destination tablespace and some data values and grantees. But I did this with a hex editor, which should not change anything else (like Notepad, which converts NULLs to SPACES).

I'm running NT4-SP3 and Oracle 8.0.5.2.0 on the destination. The source is NT4-SP6 and Oracle 8.1.6.3.0.

The export and import was done with exp80 and imp80 of the destination PC/installation.

Any idea ?

With kind regards,
Harald Henkel

Vincent Ventrone wrote:
>
> "
> > The problem is the NLS paramateters. The source DB was set to
> > German/Germany while the destination is American/America.
> >
> > Can I set the NLS parameters for the import ?
>
> I don't think you need to worry about this -- the char. set of the source DB
> is stored in the export dump file. Import will read that from the dump &
> will convert (provided the two character sets can be mapped) to the internal
> character set of the target DB. You should see an informative message in
> the import log file telling you about this.
>
> > Can I change the NLS parameters of the destination database ?
>
> Yes but these simply set defaults for server client sessions -- they can be
> overridden with "ALTER SESSION SET NLS_..." The actual character set of the
> DB content is set when you create it w/ the "CREATE DATABASE...CHARACTER
> SET..." command. The client session character set can be set with the
> NLS_LANG environment variable. Note that if the character set of the DB &
> the client session differ Oracle will simply convert character sets (if it
> can.)
>
> > In the init.ora file there have been no entries for nls parameters.
> >
> > I added
> >
> > nls_language = German
> > nls_territory = Germany
> >
> > and restarted the database.
> >
> > Yet, if I make a
> >
> > select * from nls_database_parameters ;
> >
> > I receive as before:
> >
> > PARAMETER VALUE
> > ------------------------------ ------------------------------
> > NLS_LANGUAGE AMERICAN
> > NLS_TERRITORY AMERICA
> > NLS_CURRENCY $
>
> Again all you are doing with the init.ora parameters is setting the defaults
> for the client session -- these init.ora parameter values are stored in the
> DB so that the server can use them to set client session defaults but they
> do NOT set the actual internal character set of the DB -- this is set with
> "CREATE DATABASE...CHARACTER SET..." To change it you would need to create
> a new DB with a different char. set & do a full export/import from old to
> new AFAIK...
>
> Look on Meta-Link for Note 60134.1 for the NLS FAQ.

-- 
Harald Henkel

GS automation GmbH
Dornierstr. 4
82178 Puchheim
Germany
Tel:    + 49-89-890095-79
Fax:    + 49-89-890095-80
Mobile: + 49-178-7829126
e-mail: H.Henkel_at_GS-automation.DE
Web:    www.GS-automation.DE
Received on Wed Nov 28 2001 - 02:52:07 CST

Original text of this message

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