SQL JPA не видит таблицу, хотя из консоли запрос работает

Ошибка: Can't resolve symbol 'client'

Не понимаю, что ему нужно? Даже если ввести полный путь, ошибка сохраняется(


Ответы (1 шт):

Автор решения: bio-engineer

Используя аннотацию @Query вы можете явно указать запросы на одном из 2-х языков:

  • HQL пример:
    @Query(value = "from DraftQueueAddress where id = :id")
    List<DraftQueueAddress> findByDraftId(Long id);
    ``|
    
  • SQL пример:
    @Query(value = "select * from doc.doc_draft_queue where doc_draft_queue.doc_queue_id = ?1", nativeQuery = true)
    List<DraftQueueAddress> findByDraftId(Long id);
    

Когда вы используете HQL, то не указываете явно название таблицы, а указываете вашу сущность (в моем случае DraftQueueAddress), с параметром "nativeQuery = true" вы указываете запрос на нужном вам диалекте

Примеры запросов по HQL

В случае если вы пишете нативный запрос, то для того чтобы IDEA не подсвечивала красным ей необходимо понять на каком диалекте вы пишете. Комбинацией Alt + Enter на подсвеченной строке появится окно с красной лампочкой и текстом "Assign DataSource", необходимо будет выбрать ваш вариант (например PostgreSQL). После этого проверка синтаксиса будет осуществляться на основе выбранного вами диалекта

→ Ссылка