代码之家  ›  专栏  ›  技术社区  ›  Richard Knop

Oracle数据库10g Express版本和日期格式

  •  1
  • Richard Knop  · 技术社区  · 15 年前

    我刚接触甲骨文(到目前为止我主要使用MySQL),所以这可能是个愚蠢的问题。但我已经创建了这个表(名称不是英语,但忽略了这一点,这并不重要):

    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));
    

    然后我尝试使用这个插入查询:

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

    我得到一个错误:

    ORA-01843: not a valid month
    

    我使用的日期格式是dd-mm-yyyy。我还尝试了dd.mm.yyyy,dd/mm/yyyy,我还尝试了像这样切换月份和日期-mm-dd-yyyy,mm/dd/yyyy-但仍然有相同的错误。

    怎么办?

    4 回复  |  直到 10 年前
        1
  •  6
  •   OMG Ponies    15 年前

    替换:

    ,'20-12-2004'
    

    ……用:

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

    参考文献: TO_DATE

        2
  •  0
  •   Lakshmi Dutt    12 年前

    Oracle日期格式为dd-mon-yy。

        3
  •  0
  •   andr Gal Mathys    12 年前

    使用日期格式 20-april-2004 而不是 20-4-2004 .

        4
  •  0
  •   Ravindra Gullapalli    11 年前

    使用 DD-MMM-YYYY 在数据库中插入日期时设置格式。

    例如, 15-Mar-2013 .