JPA Query получает ошибку InvalidDataAccessResourceUsageException - PullRequest
0 голосов
/ 08 мая 2018

Я написал запрос

public interface TeabagRepository extends CrudRepository<Teabag, Long> {

    @Query(value = "SELECT t.post, t.status, t.expires FROM teabags t WHERE t.status = 'hot' AND t.user_id = ?1", nativeQuery = true)
    Teabag findTea(Long id);
}

Я установил spring.jpa.show-sql=true в application.properties

Итак, запрос отображается в консоли, я запустил этот запрос в базе данных, и он работает:

SELECT
    t.post,
    t.status,
    t.expires 
FROM
    teabags t 
WHERE
    t.status = 'hot' 
    AND t.user_id = ?

Ошибка:

2018-05-08 19: 22: 27.675 ОШИБКА 1259 --- [nio-8080-exec-4] o.a.c.c.C. [. [. [/]. [dispatcherServlet]: Servlet.service () для сервлет [dispatcherServlet] в контексте с путем [] вызвал исключение [Ошибка обработки запроса; вложенное исключение org.springframework.dao.InvalidDataAccessResourceUsageException: может не выполнить запрос; SQL [SELECT t.post, t.status, t.expires ОТ пакетиков t ГДЕ t.status = 'hot' И t.user_id =?]; вложенными исключение: org.hibernate.exception.SQLGrammarException: не удалось выполнить запрос] **** с первопричиной

org.postgresql.util.PSQLException: идентификатор имени столбца не найден в этот ResultSet. ****

org.springframework.dao.InvalidDataAccessResourceUsageException: может не выполнить запрос; SQL [SELECT t.post, t.status, t.expires FROM пакетики t ГДЕ t.status = 'hot' И t.user_id =?];

обновление: больше текста ошибки

вложенным исключением является org.hibernate.exception.SQLGrammarException: не удалось выполнить запрос

корневая ошибка

с первопричиной

org.postgresql.util.PSQLException: идентификатор имени столбца не найден в этот ResultSet.

Почему этот запрос не работает в приложении весенней загрузки?

1 Ответ

0 голосов
/ 08 мая 2018

Результат ожидал каждый столбец пакетика, поэтому мне пришлось выбрать т. *

@Query(value = "SELECT t.* FROM teabags t WHERE t.status = 'hot' AND t.user_id = ?1", nativeQuery = true)
    Teabag findTea(Long id);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...