:Vänligen använd åååå-MM-dd datumformat !!!
Det är inte relaterat till ett Oracle-fel.
Jag har ett datumfält i en tabell som innehåller datum i formatet dd-MMM-åå .
Nej, du är förvirrad. Oracle lagrar inte datum i det format du ser. Den lagrar den internt i 7 byte med varje byte som lagrar olika komponenter i datetime värde.
Byte Description
---- -------------------------------------------------
1 Century value but before storing it add 100 to it
2 Year and 100 is added to it before storing
3 Month
4 Day of the month
5 Hours but add 1 before storing it
6 Minutes but add 1 before storing it
7 Seconds but add 1 before storing it
Om du vill visa, använd TO_CHAR med rätt FORMATMODEL .
Använd TO_DATE när du infogar med rätt FORMATMODEL .
Det du ser som ett format som standard är dina lokalspecifika NLS-inställningar .
SQL> select parameter, value from v$nls_parameters where parameter='NLS_DATE_FORMAT';
PARAMETER VALUE
--------------- ----------------------------------------------------------------
NLS_DATE_FORMAT DD-MON-RR
SQL> select sysdate from dual;
SYSDATE
---------
03-FEB-15
SQL> select to_char(sysdate, 'mm/dd/yyyy hh24:mi:ss') from dual;
TO_CHAR(SYSDATE,'MM
-------------------
02/03/2015 17:59:42
SQL>
Uppdatera Angående MMM formatera.
Med MMM om du menar månadens namn upp till tre tecken, använd sedan MON .