查询不搜索正确的表

时间:2013-12-05 19:08:09

标签: mysql sql jpa

大家好,我正在尝试搜索一个名为address i exsists的表,我可以向其中添加数据等

然而,当我来运行查询时,我收到以下错误

Exception Description: Problem compiling [SELECT u FROM ADDRESS U WHERE u.details LIKE :search]. 
[14, 21] The abstract schema type 'ADDRESS' is unknown.
[30, 39] The state field path 'u.details' cannot be resolved to a valid type.

这是我正在尝试运行的查询

public List<User> advancedSearch(String searchString, String criteria, String Searchcountry) {
    Query q = em.createQuery("SELECT u FROM ADDRESS U WHERE "
            + "u.details "  + "LIKE :search");
    q.setParameter("search", "%" + searchString + "%");
    return q.getResultList();
}

该表包含ID,COUNTRY,DETAILS和POSTCODE

为什么我不能从这张表中搜索?

2 个答案:

答案 0 :(得分:1)

表名和别名区分大小写。您的表名是否真的都是大写的ADDRESS

您的别名为U,但您尝试按u列引用详细信息。

此外,您可能需要SELECT u.*,而不是SELECT u

答案 1 :(得分:0)

SELECT u FROM ADDRESS U,看起来不正确,更改为select *或制作别名u