Fonctions de traitement des dates

Gestion des dates avec TO_DATE

La gestion des dates peut poser des problèmes selon les formats paramétrés sur le serveur Oracle (en général par défaut le format est DD-MON-YY). La solution la plus rigoureuse consiste à utiliser la fonction de conversion TO_DATE.

TO_DATE('20021130','YYYYMMDD') équivaut à 30-NOV-2002.

Insertion de date dans Oracle

INSERT INTO Project (Num, Name, Begin, End)
VALUES (1, 'Walking on the moon', TO_DATE('20150401','YYYYMMDD'), TO_DATE('20160401','YYYYMMDD');

TO_CHAR(date) et "fm" (format mask)

Les paramètres de type fm pour format mask (fmday, fmDay, fmDAY, fmMonth...) permettent de supprimer les zéros et espaces.

Ils sont à privilégier en général :

  • TO_CHAR(date,'day') retourne 'saturday___' (avec des espaces à la fin)

  • TO_CHAR(date,'fmday') retourne 'saturday'

BD "Gestion des intervenants" : Question avec date

SELECT pknum, TO_CHAR(debut, 'fmday') FROM tcours;
PKNUM TO_CHAR(DEBUT,'FMDAY')
----- ----------------------
    1 monday                 
    2 tuesday 

BD "Gestion des intervenants" : Insert avec date

INSERT INTO tCours (pkannee, pknum, titre, type, debut, fkintervenant) 
VALUES 	('2003', tCoursSeq.NEXTVAL, 'Relationnel','C', TO_DATE('08-01-2001','DD-MM-YYYY'), 'CROZAT');
SELECT debut FROM tCours;
DEBUT   
---------
01-JAN-01 
02-JAN-01 
08-JAN-01
AccueilRappels > Rappels Oracle > Fonctions de traitement des dates< PrécédentSuivant >