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: Developing against English version of Oracle, running against French version

Re: Developing against English version of Oracle, running against French version

From: Anton Buijs <aammbuijs_at_xs4all.nl>
Date: Fri, 5 Jul 2002 22:48:58 +0200
Message-ID: <ag50l8$j4n$1@news1.xs4all.nl>


First I would install the Oracle software with at least both languages. On Windows the default is related to the Windows settings! This enables you to play and test with the settings.
Most people don't care about NLS settings because they are always the same in there environment and no problems arise. In fact NLS is a very complex matter and was neglected by Oracle until Oracle V6 where they seriously made a start with it.

For the database I think the default Oracle8i characterset WE8ISO8859P1 is suitable for English and French, at least according to the information I read in the manual "National Language Support" guide, Chapter 3: Choosing a character set.
Oracle recommends WE8ISO8859P15 lately that includes the EURO symbol, but I've seen it working with the default set too. (NLS guide, appendix A, Charactersets that support the Euro symbol). Choose it carefully because it is very difficult to change when the database is created. There are specific French sets too. It depends on which special characters must be stored in the database (like c-cedille etc..)
When using the tools imp and exp take good notice of the characterset mentioned in one of the first lines of the log or characters will be lost in the data (replaced by "?").

Be aware of the fact that the behaviour is greatly influenced by the NLS settings (in variables or registry on Windows) at the CLIENT side. Net8 takes care of mapping every character in the client characterset to the server characterset (and if you know how many charactersets Oracle supports, you must admit Net8 is a cool product!). Also the NLS variable/registry settings in place when the Net8 listener at the database tier was started has influence. When characters can't be mapped you can end up with "?" stored in the database.

Things like the default date representation and the sort order can change with the settings.
Example: the default value for NLS_DATE_FORMAT is set by NLS_TERRITORY. If you code format masks for dates and numbers in sql or pl/sql like:

   select to_date(a_char_field,'DD-MON-YYYY') ...    select to_char(a_number_field,'999,999.99')... (I prefer to use the generic mask 999G999D99)
you can cause unanticipated errors when settings change. Here some testing is advised.
In the NLS Guide you find a clear overview of how NLS settings depend on each other (Appendix A, Default values for NLS parameters).

I'am not aware of any influence in DDL syntax related to NLS settings.

James Lavery <james_at_microsec.co.uk> schreef in berichtnieuws b966b3b3.0207050147.13e2c3e8_at_posting.google.com...
| We're about to start a development project for a French customer, and
| will be developing against an English version of Oracle.
|
| Naturally, the customer will be running a French version.
|
| Are we going to have problems with this scenario?
|
| I assume that schema definition etc. are language-independent (i.e.
| always in English - being English-centric). What about character sets
| etc.
|
| If necessary, we can install French and develop against it.
|
| Thanks,
|
| James Lavery
| MicroSec Ltd
Received on Fri Jul 05 2002 - 15:48:58 CDT

Original text of this message

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