首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Postgres查询条件

使用Postgres查询条件
EN

Stack Overflow用户
提问于 2018-06-09 06:21:28
回答 1查看 489关注 0票数 0

使用:- Postgres : PostgreSQL 10.0 Hibernate : 4.0.1

我在Postgres中创建了以下示例表

代码语言:javascript
复制
CREATE TABLE Automobile
(id                          SERIAL               
,name                        VARCHAR(20)        
,year                        INTEGER        
);

我已经创建了一个域Automobile类。

我使用以下hibernate criteria查询来返回特定年份的所有名称。

代码语言:javascript
复制
    final Criteria criteria = session.createCriteria (Automobile.class);

    criteria.add (Restrictions.eq ("year", 1 ));

    List<Automobile> list = criteria.list();

但是,list()正在生成以下异常。

代码语言:javascript
复制
    java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String

因此,我更改了查询,以传递“年份”的字符串值:

代码语言:javascript
复制
    criteria.add (Restrictions.eq ("year", new String("1")));

    List<Automobile> list = criteria.list();

但是,list()正在生成一个不同的异常。

代码语言:javascript
复制
    org.hibernate.exception.SQLGrammarException: ERROR: operator does not exist: integer = character varying
    Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts.
    Position: 1145

有什么想法,也许是原因和解决方案,将返回我的比赛列表,请?

谢谢你皮特。

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

https://stackoverflow.com/questions/50769083

复制
相关文章

相似问题

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