Oracle
 sql >> Database >  >> RDS >> Oracle

ORA-01843:mese non valido quando si inserisce una data in Oracle

MM è per mese. Usa MI per minuti.

Hai

HH:MM:SS

ogni volta che i minuti sono maggiori di 12 si attiverà l'errore poiché stai dicendo a Oracle di interpretarli come mesi.

Stai anche usando HH senza am/pm (nel tuo esempio hai appena usato 12 ). Se stai usando un formato 24 usa HH24

DD/MM/YYYY HH24:MI:SS

o se vuoi il formato 12 ore

DD/MM/YYYY HH:MI:SSAM

e poi

02/01/2013 07:42:00am

Modifica

Stai inserendo la data con il formato predefinito che è MM/GG/AAAA (standard americano):25 non è un mese valido. Puoi utilizzare il TO_DATE funzione

'TO_DATE(' . $array['data'] . ', DD/MM/YYYY HH24:MI:SS)'