Как исправить «У вас есть ошибка в вашем синтаксисе SQL» JPA Постоянство - PullRequest
0 голосов
/ 22 июня 2019

В моей сущности JPA у меня есть формула для расчета, если данные используются в другой таблице.(Я использую базу данных MySQL)

Я пробовал тот же запрос непосредственно в базе данных с MySQL, и он работает.

@Data
@Entity
@Table(name = "CASE_TYPE")
@ToString
@EqualsAndHashCode
public class CaseType {
  @Formula("SELECT * FROM case_for_map c WHERE NOT EXISTS (SELECT * FROM case_type ct WHERE ct.id = c.case_type_id)")
  private Boolean usedInMap;
}

На самом деле я получил

java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT * FROM case_for_map c WHERE NOT EXISTS (SELECT * FROM case_type ct WHERE ' at line 1

Есть идеи, как это решить?

1 Ответ

0 голосов
/ 22 июня 2019

Я думаю, недостаточно скобок.

public class CaseType {
  @Formula("(SELECT * FROM case_for_map c WHERE NOT EXISTS (SELECT * FROM case_type ct WHERE ct.id = c.case_type_id))")
  private Boolean usedInMap;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...