Oracle Database 10g Express Edition AND Date Formats

11.4k views Asked by At

I'm new to Oracle (I've been using MySQL mainly until now) so this might be a dumb question. But I have created this table (names are not english but ignore that, that is not important):

CREATE TABLE Auta (
id_auto NUMBER(5) UNIQUE NOT NULL,
typ CHAR(10),
specifikacia_typu CHAR(15),
SPZ CHAR(8),
farba CHAR(20),
datum_vyroby DATE,
pocet_miest NUMBER(2),
pociatok_km NUMBER(6),
poplatok_denny NUMBER(4),
poplatok_km NUMBER(2));

Then I tried using this INSERT query:

INSERT INTO Auta VALUES (
1
,'Audi'
,'A6'
,'KE1-1548'
,'cierna'
,'20-12-2004'
,5
,158749
,1356
,88
);

And I get an error:

ORA-01843: not a valid month

The date format I am using is DD-MM-YYYY. I also tried DD.MM.YYYY, DD/MM/YYYY, I also tried switching month and day like this - MM-DD-YYYY, MM/DD/YYYY - and still the same error.

What to do?

4

There are 4 answers

0
OMG Ponies On BEST ANSWER

Replace:

,'20-12-2004'

...with:

, TO_DATE('20-12-2004', 'DD-MM-YYYY')

Reference: TO_DATE

0
Lakshmi Dutt On

oracle date format is DD-MON-YY .

1
d-coder On

Use DD-MMM-YYYY format while inserting date into the database.

For example, 15-Mar-2013.

1
raghav On

Use date format of 20-april-2004 instead of 20-4-2004.