DBAtlas · Atlas d'exploitation des bases de données

ORA-01843: not a valid month (mois invalide)

Oracle

Que signifie cette erreur ?

Lors de la conversion d'un texte en DATE, la partie mois n'a pas pu être interprétée comme un mois valide. Généralement, le format de date ne correspond pas au format des données.

Cause

Aucun masque de format passé à TO_DATE et le NLS_DATE_FORMAT de la session ne correspond pas aux données ; jour et mois inversés (confusion DD/MM et MM/DD) ; différence de langue/de paramètres régionaux (dans les noms de mois) ; texte de date corrompu ou inattendu.

Comment la corriger

Passez toujours un format explicite dans les appels TO_DATE : TO_DATE('2026-07-04', 'YYYY-MM-DD'). Pour un texte contenant des noms de mois, indiquez la langue : TO_DATE(str, 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE=ENGLISH'). Définissez le format de la session si nécessaire : ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD'. Validez les textes de date invalides avant le chargement.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur