Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Detecting the INSERT format for DATE database fields?
"Thomas Jerkins" <tomjerk_at_hotmail.com> a écrit dans le message de
news:cst3bg$osr$05$1_at_news.t-online.com...
| Assume I got a database resp. table defintion with a DATE field. How do I find out in which format
the
| field should be filled in an INSERT SQL statement?
|
| Sometimes when I enter e.g.
|
| INSERT INTO .... VALUES (....., '2005-01-25',.....);
| or
| INSERT INTO .... VALUES (....., '2005-01-25-13.14.15.00',.......);
|
| I got an error like:
|
| ORA-01861: literal does not match format string
|
| before I realized that
|
| INSERT INTO .... VALUES (....., '25-01-2005',....);
|
| is the correct format.
|
| Tom
|
Never rely on implicit conversion.
Use to_date to explicitly convert your external format to date datatype:
insert into ... values (..., to_date('2005-01-25','YYYY-MM-DD'),...);
or
insert into ... values (..., to_date('2005-01-25-13.14.15.00','YYYY-MM-DD-HH24.MI.SS.FF2'),...);
or whatever is your external format.
This is the correct way.
Regards
Michel Cadot
Received on Sat Jan 22 2005 - 10:07:05 CST