2013-05-13 3 views
2

Я работаю над Java Swing-приложением + Hibernate + Mysql + Spring. Когда я проверяю операции CRUD, у меня нет проблем с прочитанным, но в операторах вставки система выдает сообщение:MySQL: Неизвестная системная переменная 'tx_read_only'

Unknown system variable `tx_read_only` 

Я имею последнюю версию MySql

  • Hibernate 4
  • Java аннотации

Можете ли вы рассказать мне, в чем проблема решить сейчас?

+0

Проверьте конфигурацию/аннотации Spring - возможно, транзакция сконфигурирована как только для чтения? – MattR

+0

Вот мой конфигурационный файл Sprin XMl ... <контекст: annotation-config /> <контекст: компонентный сканер base-package = "BO, DAO»/> <боб ID = "appContextProvider" класс = "GUI.AppContextProvider"> <боб ID = "класс encryptModule"= «DAO.Util.EncryptModule»> «Я этого не вижу. – MigRome

ответ

6

Просто бросать камни в темноте, но одна из возможностей может быть:

  • Переменная tx_read_only была введена в MySQL 5.6.5.
  • Вероятно, версия MySQL старше этого, но Connector/J все равно пытается использовать новую переменную.
  • Согласно release notes, поддержка этой переменной указана в Разъем/J 5.1.23.

==> возможно, версия старше 5.1.23 будет работать, или это ошибка, которая исправлена ​​в версии более новой версии.

+0

В качестве расширенного ответа: наконец, у меня нет проблем с драйвером 5.1.22/MySQL - версия 6.0.10/В этой версии существует только одна переменная с префиксом tx_: TX_ISOLATION ... надеюсь, что сообщество MySQL решит как можно скорее это ошибка, которая появилась во время миграции из HIbernate 3.1 в 4.2 через Spring framework. Спасибо Микко :) – MigRome

Смежные вопросы