quinta-feira, 28 de maio de 2009

NLS Parameters

Para englobar todo o assunto relacionado a globalização, vou fazer um overview sobre os parametros que regem o comportamento de instruções sql no banco de dados relacionados com parametros NLS.

Os parametros são definidos do baixo nivel para mais alto, assim, da database para sessão, como mostra o diagrama:






















Os parametros os quais regem globalização são:

1. Linguistica - NLS_LANGUAGE - Determina default para:
  • NLS_DATE_LANGUAGE - Determina a abreviações de dia e mês.
  • NLS_SORT - Dertimina a ordenação de caracteres.
2. Cultural/Geografica - NLS_TERRITORY - Determina default para:
  • NLS_CURRENCY - Simbolo da moeda local
  • NLS_DATE_FORMAT - Formato da data local
  • NLS_DUAL_CURRENCY - Simbolo secundário da moeda local
  • NLS_ISO_CURRENCY -
  • NLS_NUMERIC_CHARACTERS - Ponto decimal a ser usado
  • NLS_TIMESTAMP_FORMAT - Formato de valores time stamp
  • NLS_TIMESTAMP_TZ_FORMAT - Formato de valores time stamp with local time zone
3. Parametros independentes
  • NLS_CALENDAR - Calendário a ser usado
  • NLS_COMP - ANSI ou BINARY
  • NLS_LENGTH_SEMANTICS -

Existe o parametro NLS_LANG, o qual pode ser setado na sessão ou no ambiente define o comportamento de linguistica e localidade, ao configura-lo definimos:

NLS_LANG =language
_territory.charset

Nesse ponto todos os parametros denpendentes de NLS_LANGUAGE e NLS_TERRITORY são setados para default, e setado também para o character set do ambiente.

Podemos verificar os parametros iniciais do nosso banco de dados na views: NLS_DATABASE_PARAMETERS
Na minha base retorna:
PARAMETER VALUE
------------------------------ ------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET AL32UTF8
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 10.2.0.1.0
Espero ainda melhorar este post ou entrar nesse assunto novamente, por enquanto apenas quis demonstrar a existencia de relacionamento e dependencia dos parametros de globalização.