运行查询以使用JPA和Spring获取特定字段时出错

时间:2017-11-10 18:25:26

标签: java sql spring spring-data-jpa

我正在尝试使用Spring和JPA返回特定的列,为此我创建了一个查询,但只有在我正在查询的表上有数据时才会返回此错误

  

java.sql.SQLException:列名无效

@Repository
public interface UserRepository extends CrudRepository<User, Long>{

@Query(value = "SELECT ID FROM users", nativeQuery = true)
    public List<User> findNameAndId();
}

当我尝试替换ID的{​​{1}}列时,即使表中的数据也可以正常工作,但我不想检索所有列。

我尝试查询其他列,因此问题不在于*列。我确定列名和查询是正确的,因为我直接在SQL Developer上运行它并且工作。

1 个答案:

答案 0 :(得分:0)

有很多情况:

  1. 区分大小写
  2. 检查您搜索的列名称在数据库中是否具有相同的列名称
  3. 请勿将“ as”用作别名列名

因为,我遇到了同样的问题。我在数据库中的列是user_id,与我在春季查询中使用的列不同。

之前: 从表中选择用户ID。

之后: 从表中选择user_id