Ошибка интерпретации запроса [обновить студенческий набор Student.email =: электронная почта]; это может указывать на семантическую (пользовательский запрос) проблему или ошибку в парсере - PullRequest
0 голосов
/ 07 апреля 2019

Я использую базу данных MySQL для изучения Hibernate из видеоуроки, я делаю шаг за шагом, и когда я пытаюсь выполнить запрос для обновления в базе данных для всех записей «Произошла ошибка при интерпретации запроса».странная часть заключается в том, что тот, кто выполняет тот же запрос, без проблем проходит 1001 *

 public static void main(String[] args) {

     SessionFactory factory = new Configuration()
     .configure("hibernate.cfg.xml")
     .addAnnotatedClass(Student.class)
     .buildSessionFactory();

     Session session = factory.getCurrentSession();
     session.beginTransaction();

Query email = session.createQuery("UPDATE Student SET email=:email");
 email.setParameter("email", "code@gmail.com");
 email.executeUpdate();

 session.getTransaction().commit;
 session.close();

 }

Я ожидаю, что все письма из базы данных будут обновлены, но вместо выполнения запроса я получу

Исключениев потоке "main" org.hibernate.query.sqm.InterpretationException: ошибка интерпретации запроса [обновить адрес электронной почты ученика =: электронная почта];

это может указывать на семантическую (запрос пользователя) проблему или ошибку в синтаксическом анализаторев org.hibernate.query.sqm.produce.internal.SemanticQueryProducerImpl.interpret (SemanticQueryProducerImpl.java:66)

ОК, я выяснил, в чем проблема, я использовал выпуск 6Alpha из hibernate-core.Я перешел на 5.4.2.Final и все работает без проблем

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...