首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >SQL错误: 241,SQLState: 22007

SQL错误: 241,SQLState: 22007
EN

Stack Overflow用户
提问于 2013-06-18 18:59:35
回答 1查看 3K关注 0票数 0

我有一个视图,在这里我抛出了一个日期时间,所以我可以忽略时间部分。

代码语言:javascript
复制
CAST(av.date as DATE),

我尝试使用以下代码在特定日期查询此视图:

代码语言:javascript
复制
s.date BETWEEN :start AND :end

要设置这些参数,我将接收日期并使用以下代码截断日期:

代码语言:javascript
复制
DateTime beginDate = new DateTime(bgn);
DateTime endDate = new DateTime(end);
Date startDt = DateUtils.truncate(beginDate.toDate(), Calendar.DATE);
Date endDt = DateUtils.truncate(endDate.toDate(), Calendar.DATE);

问题是,当这涉及到JDBC时,我会得到以下错误:

警告JDBCExceptionReporter SQL错误: 241,SQLState: 22007 从字符串转换日期和/或时间时,错误JDBCExceptionReporter转换失败。

使用以下代码将日期设置为查询:

代码语言:javascript
复制
Query query = entityManager.createNamedQuery(name);
query.setParameter("start", startDt);

有人知道会发生什么吗?我找到了这个关于这个错误的链接,但是它对我一点帮助都没有。我完全迷上了这件事。

EN

回答 1

Stack Overflow用户

发布于 2013-06-18 19:28:05

我不知道将日期传递给查询的方式,但您可以将日期转换为字符串,然后将其传递给查询:

代码语言:javascript
复制
DateTime beginDate = new DateTime(bgn);
DateTime endDate = new DateTime(end);
DateFormat df = new SimpleDateFormat("yyyyMMdd");
String startDt = df.format(DateUtils.truncate(beginDate.toDate(), Calendar.DATE));
String endDt = df.format(DateUtils.truncate(endDate.toDate(), Calendar.DATE));

不知道您的确切代码,这是一点猜测。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17176774

复制
相关文章

相似问题

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