使用Hibernate查询H2

时间:2013-08-21 19:17:57

标签: java hibernate

我有一个简单的课程:

class Song {
@Id
@GeneratedValue(generator="increment")
@GenericGenerator(name="increment", strategy = "increment")
private long id;
private String composition;
private String performer;
private String version;
private int length; //  Length in seconds
private int rating; //  Rating

@OneToMany(fetch = FetchType.LAZY, cascade = {CascadeType.ALL})
private Set<Source> sources;
...
}

我将一些记录保存到H2数据库中。 我可以毫无问题地获取所有记录的列表(也可以计数),但是当我使用“where”子句进行查询时,我总是得到空列表。 这是我试过的查询:

List<Song> result = (List<Song>) entityManager.createQuery("FROM Song WHERE performer = "artist").getResultList();

我尝试了以下版本的查询而没有任何运气:

"SELECT s FROM Song s WHERE s.performer = 'artist'"
"FROM Song WHERE str(performer) like 'artist'"

这个问题让我抓狂。我觉得我错过了什么。

1 个答案:

答案 0 :(得分:0)

它区分大小写,你确定db有'artist'作为值,没有尾随空格或任何东西吗?