Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

ORA-01843:não é um mês válido ao inserir uma data no oracle


MM é por mês. Usar MI por minutos.

Você tem
HH:MM:SS

toda vez que os minutos forem maiores que 12, o erro será acionado, pois você está dizendo ao Oracle para interpretá-los como meses.

Você também está usando HH sem am/pm (no seu exemplo você acabou de usar 12 ). Se você estiver usando um formato 24, use HH24
DD/MM/YYYY HH24:MI:SS

ou se você quiser o formato de 12 horas
DD/MM/YYYY HH:MI:SSAM

e depois
02/01/2013 07:42:00am

Editar

Você está inserindo a data com o formato padrão que é MM/DD/AAAA (padrão americano):25 não é um mês válido. Você pode usar o TO_DATE função
'TO_DATE(' . $array['data'] . ', DD/MM/YYYY HH24:MI:SS)'