sql - Oracle - 文字与格式字符串错误不匹配

标签 sql database oracle date-format ora-01861

<分区>

Possible Duplicate:
Simple Oracle query: literal does not match format string

我收到以下错误:

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 格式。

有什么想法吗?

谢谢。

最佳答案

当您将字符串值插入日期列时,您需要在 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 with demo

关于sql - Oracle - 文字与格式字符串错误不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13518506/

相关文章:

sql - 返回 WHERE 子句不完全匹配的行

php - 如何重写此 SQL 语句以接受数组变量?

sql - 在sql查询中从dbgeography中提取纬度

一行中的最小和最大行的 SQL 值

mysql - 将数据从mssql迁移到mysql的问题

database - 在 12c 中查找数据泵转储位置

oracle - 显示进入 Oracle 数据库的所有查询

java - 如何在SQL查询中插入变量

android - 如何在模拟器上查看Android SQLite数据库

oracle - 如何在 oracle regexp_like() 中进行负向前瞻, '?!' 不起作用