8

可能重复:
简单的​​ Oracle 查询:文字与格式字符串不匹配

我收到以下错误:

INSERT INTO CatalogueEntry VALUES('2001-12-10', 2, 14.99, 1, 0)

ERROR at line 1: ORA-01861: literal does not match format string `

第一个字段是DATE格式。

有任何想法吗?

谢谢。

4

2 回答 2

22

当您将字符串值插入日期列时,您需要在INSERT使用该to_date()函数期间将其转换为日期。使用此函数时,您将提供字符串的格式。

to_date()函数格式:

to_date( string1, [ format_mask ], [ nls_language ] )

所以你的查询将是这样的:

insert into CatalogueEntry
values
(
  to_date('2001-12-10', 'yyyy-mm-dd'),
  2,
  14.99,
  1,
  0);

请参阅带有演示的 SQL Fiddle

于 2012-11-22T18:50:42.597 回答
1

试试这个 SQL:

INSERT INTO CatalogueEntry 
              VALUES(to_date('2001-12-10','yyyy-mm-dd'), 2, 14.99, 1, 0);
于 2012-11-22T18:48:37.997 回答