069 / 58 80 436 10 info@dbaservices.de
ORA-01843 – not a valid mont

01843, 00000, „not a valid month“

// *Cause: A date specified an invalid month.
//      Valid months are: January-December, for format code MONTH, and Jan-Dec, for format code MON.

// *Action: A date specified an invalid month.
// Valid months are: January-December, for format code MONTH, and Jan-Dec, for

// format code MON.

2.) Erklärung

Es wurde kein gültiger Monat gewählt. Diese Fehlermeldung wird häufig anzeigt, wenn die Spracheinstellungen (NLS-Parameter) nicht zum Datumsformat stimmen.

Das default Datumsformat wird explizit durch die folgenden Parameter festgelegt.

NLS_DATE_FORMAT NLS_TIMESTAMP_FORMAT und NLS_TIMESTAMP_TZ_FORMAT.

Es kann aber auch implizit durch den Parameter NLS_TERRITORY festgelegt werden. Die Parameter können geändert werden durch alter session set nls_….

Beispiel für diese Fehlermeldung:

Hier ist das Default-Datumsformat implizit festgelegt durch den Parameter nls_territory also DD.MM.YY. Da hier Monat und Tag vertauscht wurden, wird 29 als ungültiger Monat angezeigt.

SQL> show parameter nls_date_format

NAME                                 TYPE       VALUE

———————————— ———– ——–

nls_date_format                     string

SQL> show parameter nls_territory

NAME                                 TYPE       VALUE

———————————— ———– ——————————

nls_territory                       string     GERMANY

SQL> select sysdate from dual;

SYSDATE

——–

29.04.15

SQL> select sysdate from dual where sysdate = ‚04.29.15‘;

select sysdate from dual where sysdate = ‚04.29.15‘

*

ERROR at line 1:

ORA-01843: Kein gultiger Monat

3.) Lösungsvorschläge

NLS-Parameter prüfen und mit den Daten abgleichen.

show parameter nls_date_format

show parameter nls_territory

Danach:

SQL-Statement anpassen, das nsl_date_format mit alter session ändern oder mit der Funktion to_date eine Konvertierung in dem SQL-Statement vornehmen.

Haben Sie Fragen?

(erforderlich)
Dieses Feld dient zur Validierung und sollte nicht verändert werden.

NEUSTE BEITRÄGE

DBVisit Single Instance Standby for RAC

A few months ago I got the exciting task to create a single instance standby for a RAC. Honestly,I was skeptical about whether it would run properly. Additionaly, the single instance should be usingfilesystem, while the Real Application Clusters is using ASM. Except...

ORA-00936 – missing expression

1.) Texte aus oerr unter Linux 00936, 00000, „missing expression“ // *Cause: // *Action 2.) Erklärung Diese Meldung wird angezeigt, wenn ein Teil der Syntax fehlt. Fehlen z.B. bei einem Select-Statement die Spaltennamen (bzw. * für alle Spalten), so wird diese Meldung...

ORA-06550 – line %s, column %s:\n%s

1.) Texte aus oerr unter Linux 06550, 00000, „line %s, column %s:\n%s“ // *Cause: Usually a PL/SQL compilation error. // *Action:… 2.) Erklärung Es wurde versucht, einen invalid Block oder PL/SQL-Code auszuführen. Dabei ist ein Fehler bei der Kompilierung aufgetreten....