首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ORA-01861:文本与格式字符串不匹配

ORA-01861:文本与格式字符串不匹配
EN

Stack Overflow用户
提问于 2009-09-07 07:00:49
回答 6查看 449.9K关注 0票数 39

当我尝试执行此代码段时:

代码语言:javascript
运行
复制
cmd.CommandText = "SELECT alarm_id,definition_description,element_id,
    TO_CHAR (alarm_datetime, 'YYYY-MM-DD HH24:MI:SS'),severity,
    problem_text,status FROM aircom.alarms 
    WHERE status = 1 and 
    TO_DATE (alarm_datetime,'DD.MM.YYYY HH24:MI:SS') > TO_DATE ('07.09.2008 
    09:43:00', 'DD.MM.YYYY HH24:MI:SS') 
    order 
    by ALARM_DATETIME desc";

我得到了:

代码语言:javascript
运行
复制
ORA-01861: literal does not match format string

数据库连接没有问题,因为我可以执行基本的SQL命令。

这句话有什么问题?

EN

回答 6

Stack Overflow用户

发布于 2009-09-07 07:09:40

删除WHERE子句中的TO_DATE

代码语言:javascript
运行
复制
TO_DATE (alarm_datetime,'DD.MM.YYYY HH24:MI:SS')

并将代码更改为

代码语言:javascript
运行
复制
alarm_datetime

该错误来自日期列的to_date转换。

添加了解释: Oracle使用它的alarm_datetime依赖日期格式将您的nls转换为字符串。在此之后,它使用您提供的日期掩码调用to_date。这会抛出异常。

票数 39
EN

Stack Overflow用户

发布于 2009-09-07 07:11:42

该错误表示您试图输入带有格式字符串的文字,但格式字符串的长度与文字的长度不同。

以下格式之一不正确:

代码语言:javascript
运行
复制
TO_CHAR(t.alarm_datetime, 'YYYY-MM-DD HH24:MI:SS')
TO_DATE(alarm_datetime, 'DD.MM.YYYY HH24:MI:SS')
票数 9
EN

Stack Overflow用户

发布于 2012-06-04 14:48:32

代码语言:javascript
运行
复制
SELECT alarm_id
,definition_description
,element_id
,TO_CHAR (alarm_datetime, 'YYYY-MM-DD HH24:MI:SS')
,severity
, problem_text
,status 
FROM aircom.alarms 
WHERE status = 1 
    AND TO_char (alarm_datetime,'DD.MM.YYYY HH24:MI:SS') > TO_DATE ('07.09.2008  09:43:00', 'DD.MM.YYYY HH24:MI:SS') 
ORDER BY ALARM_DATETIME DESC 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1387917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档