DBAtlas · Atlas für Datenbankbetrieb

ORA-01843: not a valid month (kein gültiger Monat)

Oracle

Was bedeutet das?

Beim Konvertieren von Text in ein DATE konnte der Monatsteil nicht als gültiger Monat interpretiert werden. Meist passt das Datumsformat nicht zum Format der Daten.

Ursache

An TO_DATE wurde keine Formatmaske übergeben und das NLS_DATE_FORMAT der Session passt nicht zu den Daten; Tag und Monat vertauscht (Verwechslung DD/MM vs. MM/DD); ein Sprach-/Locale-Unterschied (bei Monatsnamen); beschädigter oder unerwarteter Datumstext.

Lösung

Übergib in TO_DATE-Aufrufen immer ein explizites Format: TO_DATE('2026-07-04', 'YYYY-MM-DD'). Gib bei Text mit Monatsnamen die Sprache an: TO_DATE(str, 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE=ENGLISH'). Setze bei Bedarf das Session-Format: ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD'. Prüfe ungültige Datumstexte vor dem Laden.

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank