[Oracle 9i] NLS_DATE_FORMAT='DD/MM/YYYY'
L'objectif est de contraindre les dates à une période afin d'éviter les valeurs excentriques.
La table est modifiée. J'exécute une requète
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 alter table MACHIN add constraint CC_DTMACHIN check (DTMACHIN between '01-JAN-1990' and '01-JAN-2100');
J'ai les enregistrements attendus avec des dates correctes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part select DTMACHIN from MACHIN
Maintenant je modifie le format de date.
J'exécute la requète et là "fin de fichier de communication" et sur le fichier log "ORA-07445: exception trouvée : vidage coeur ... [Address not mapped to object] ".
Code : Sélectionner tout - Visualiser dans une fenêtre à part alter session set NLS_DATE_FORMAT='DD-MON-YY'
Si quelqu'un a une ébauche d'explication, je suis preneur merci d'avance.
PS: j'ai une solution avec un trigger mais cela ne m'interresse pas.
J'ai aussi essayé le code suivant mais cela ne change rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 alter table MACHIN add constraint CC_DTMACHIN check (DTMACHIN between to_date('01/01/1990', 'dd/mm/yyyy') and to_date('01/01/2100', 'dd/mm/yyyy'));
Partager