下面是代码的一个最低版本,我花了很长时间才弄清楚为什么它不起作用:
Query q = session.createQuery(queryString);
q.setTimestamp(0, new java.util.Date());错误是:
Unset positional parameter at position: 0当我用setTimestamp()代替setParameter()时
Query q = session.createQuery(queryString);
q.setParameter(0, new java.util.Date());但我不知道为什么。我正在使用hibernate 3.2.1。
编辑:,这篇文章和其他建议一起去哪里了?就是这个!!
发布于 2011-11-24 13:33:14
以前这里有一个答案,建议使用java.sql.Timestamp而不是java.util.Date。有了这个小小的修改,setTimestamp方法就会像预期的那样工作。
发布于 2011-11-18 14:08:07
在映射中,可能需要向持有时间戳的变量添加以下注释
@Temporal(TemporalType.TIMESTAMP)
这可能是setParameter工作的原因(它只接受一个对象),而setTimestamp却不起作用。
https://stackoverflow.com/questions/8183637
复制相似问题