En Oracle Database, el NLS_LANGUAGE
El parámetro de inicialización especifica el idioma predeterminado de la base de datos.
Este idioma se utiliza para mensajes, nombres de días y meses, símbolos para AD, BC, am y pm, y el mecanismo de clasificación predeterminado.
El NLS_LANGUAGE
El parámetro también determina los valores predeterminados del NLS_DATE_LANGUAGE
y NLS_SORT
parámetros.
Este artículo describe cómo cambiar el valor de NLS_LANGUAGE
y NLS_DATE_LANGUAGE
parámetros.
Compruebe la configuración inicial
Primero, revisemos mi configuración actual para estos parámetros:
SELECT
PARAMETER,
VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER IN (
'NLS_LANGUAGE',
'NLS_DATE_LANGUAGE',
'NLS_SORT'
);
Resultado:
PARAMETER VALUE ____________________ ___________ NLS_LANGUAGE AMERICAN NLS_DATE_LANGUAGE AMERICAN NLS_SORT BINARY
Cambiar el NLS_LANGUAGE
Parámetro
Podemos usar el ALTER SESSION
instrucción para cambiar la configuración del NLS_LANGUAGE
parámetro.
Ejemplo:
ALTER SESSION SET NLS_LANGUAGE = 'BASQUE';
Resultado:
Session altered.
Comprobemos los nuevos valores:
SELECT
PARAMETER,
VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER IN (
'NLS_LANGUAGE',
'NLS_DATE_LANGUAGE',
'NLS_SORT'
);
Resultado:
PARAMETER VALUE ____________________ ____________ NLS_LANGUAGE BASQUE NLS_DATE_LANGUAGE BASQUE NLS_SORT GENERIC_M
Podemos ver que tanto el NLS_LANGUAGE
y NLS_DATE_LANGUAGE
los parámetros se han cambiado al idioma especificado, aunque solo actualizamos el NLS_LANGUAGE
parámetro.
También podemos ver que el NLS_SORT
el parámetro se ha actualizado al tipo predeterminado para BASQUE
idioma.
Cambiar el NLS_DATE_LANGUAGE
Parámetro
Ahora cambiemos el NLS_DATE_LANGUAGE
parámetro:
ALTER SESSION SET NLS_DATE_LANGUAGE = 'SPANISH';
Resultado:
Session altered.
Y ahora comprueba los nuevos valores:
SELECT
PARAMETER,
VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER IN (
'NLS_LANGUAGE',
'NLS_DATE_LANGUAGE',
'NLS_SORT'
);
Resultado:
PARAMETER VALUE ____________________ ____________ NLS_LANGUAGE BASQUE NLS_DATE_LANGUAGE SPANISH NLS_SORT GENERIC_M
Así que hemos cambiado explícitamente el valor de NLS_DATE_LANGUAGE
parámetro sin cambiar los otros dos.
El orden predeterminado para SPANISH
es SPANISH
, y podemos ver que el NLS_SORT
el valor sigue siendo GENERIC_M
, por lo que no se ha visto afectado.