NLS DATE FORMAT

De system.co.free.fr.
(Différences entre les versions)
(Modifier le format date par une conversion avec to_char(...):)
(Priorité de prise en compte des modifications de NLS_DATE_FORMAT)
Ligne 4 : Ligne 4 :
==Priorité de prise en compte des modifications de NLS_DATE_FORMAT==
==Priorité de prise en compte des modifications de NLS_DATE_FORMAT==
-
1. Session  NLS_DATE_FORMAT (via ALTER SESSION commande)<br>
+
1. Session  (via ALTER SESSION commande)<br>
-
2. Client  NLS_DATE_FORMAT (a partir des variables d'environnements du client)<br>  
+
2. Client  (a partir des variables d'environnements du client)<br>  
-
3. Instance NLS_DATE_FORMAT (a partir du pfile ou du spfile)<br>
+
3. Instance (a partir du pfile ou du spfile)<br>
-
4. Database NLS_DATE_FORMAT <br>
+
4. Database <br>
-
 
+
<br>
==Visualiser le format actuel des dates:==
==Visualiser le format actuel des dates:==

Version du 1 mars 2013 à 07:34

retour vers Oracle


Sommaire

Priorité de prise en compte des modifications de NLS_DATE_FORMAT

1. Session (via ALTER SESSION commande)
2. Client (a partir des variables d'environnements du client)
3. Instance (a partir du pfile ou du spfile)
4. Database

Visualiser le format actuel des dates:

 SELECT value FROM v$nls_parameters WHERE parameter ='NLS_DATE_FORMAT';


changer le format des dates au niveau de l'instance:

 ALTER SYSTEM SET NLS_DATE_FORMAT='YYYY/MM/DD' SCOPE=SPFILE;

Cela nécessite d’être en spfile et de redémarrer la base.

Modifier le format des dates pour la session en cours:

 ALTER session SET NLS_DATE_FORMAT='DD/MM/YYYY HH24:MI';

Ce changement est pris immédiatement en compte mais n'est valable que pour la session en cours.

 SELECT sysdate FROM dual;


Modifier le format date au niveau de l’environnement du client:

au niveau de l'OS avant d'utiliser et de se connecter a la base, définir la variable NLS_DATE_FORMAT:

pour Unix et Linux ( peut etre mis dans le .profile du user )

 export NLS_DATE_FORMAT='DD/MM/YYYY HH24:MI'

pour windows

 set NLS_DATE_FORMAT='YYYY/MM/DD'

si cette variable NLS_DATE_FORMAT n'est pas défini a ce niveau, elle est déduite de NLS_LANG pour les sessions démarrées a partir de cette environnement. ( environnement = user OS et ses variables )


Modifier l'affichage d'une date par une conversion avec to_char(...):

 SELECT to_char(sysdate, 'YYYY-MON-DD') FROM dual;
Outils personnels