1

Could people please let me know if there are any issues with setting Oracle 10g NLS Parameters at database level, specifically the NLS_TERRITORY to the country I am in together with setting the timezone to UTC.

Will there be any conflicts b/c as the moment, our NLS_TERRITORY is set to AMERICA which is not correct?

Thanks.

Aravind Yarram
  • 78,777
  • 46
  • 231
  • 327
tonyf
  • 34,479
  • 49
  • 157
  • 246

2 Answers2

3

With Oracle, you must be cautious with the NLS parameters in general. Documentation is always a good idea: NLS / Globalization stuff

Note that the NLS_TERRITORY parameter is derived from NLS_LANG. So, you should be able to affect the NLS_TERRITORY parameter by changing NLS_LANG. (This should be synched up in any case.)

After you get through that (please do read it), you will probably be thinking "Hey, we have existing data, will we need to perform any conversions on it after changing the parameter?"

  1. TAKE A BACKUP! BEFORE CHANGING THE PARAMETER. PLEASE
  2. And yes, you may have to perform some data conversion, depending on how things have been stored, and what territory you change to.

Also keep in mind that any client software that uses this database should have its NLS_LANG (especially the characterset portion of it) set the same as the database - otherwise data can get mangled.

Eddy B
  • 145
  • 1
  • 4
  • The last paragraph is a very bad advice. The character set part of NLS_LANG needs to be matched to the character set in which an application operates and in which it passes data to the Oracle Client (OCI). There are a number of factors that could influence the right choice and for some applications the choice may be even irrelevant. – Sergiusz Wolicki Apr 11 '19 at 01:49
0

What do you mean by "NLS Parameters at database level, specifically the NLS_TERRITORY"?

If you mean the parameters showing up in NLS_DATABASE_PARAMETERS, then these cannot be changed once the database is created. However, these particular parameters (except NLS_[NCHAR]_CHARACTERSET) are used only in CHECK constraints and a few other expressions that need to remain constant throughout the life of a database (e.g. VPD). Hence, it seldom matters to what NLS_TERRITORY in NLS_DATABASE_PARAMETERS is set to.

Bhargav Rao
  • 50,140
  • 28
  • 121
  • 140