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

Oracle TO_DATE NON genera un errore

Vedi la tabella qui:https://docs. oracle.com/cd/B28359_01/server.111/b28286/sql_elements004.htm#g195479

Fa parte della sezione Regole di conversione da stringa a data del modello di formato Datetime. Nel caso di MM se non c'è corrispondenza, tenta di MON e MONTH . Allo stesso modo se specifichi MON e non lo trova, tenta MONTH . Se specifichi MONTH e non riesce a trovarlo, tenta MON , ma non tenterà mai di MM su qualsiasi cosa tranne MM .

In risposta alla domanda:Can I turn it off? La risposta è Sì.

Puoi farlo specificando FX come parte della tua formattazione.

SELECT TO_DATE('18/february/2016', 'FXDD/MM/YYYY') FROM dual;

Ora ritorna:

Considerando quanto segue:

SELECT TO_DATE('18/02/2016', 'FXDD/MM/YYYY') FROM dual;

Restituisce il previsto:

Nota che quando specifichi FX tu DEVI usa i separatori appropriati altrimenti si verificherà un errore.