Я использую Hibernate 3.2.0 с MySQL 5.1. После обновления group_concat_max_len в MySQL (из-за того, что запрос group_concat превышал значение по умолчанию), я получил следующее исключение при выполнении SQLQuery с предложением group_concat:
"Нет сопоставления диалектов для типа JDBC: -1"
-1 - это значение java.sql.Types для LONGVARCHAR. Очевидно, что увеличение значения group_concat_max_len заставляет вызовы group_concat возвращать значение LONGVARCHAR. Это выглядит как экземпляр этой ошибки:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3892
Я полагаю, что есть исправление этой проблемы в Hibernate 3.5, но это все еще версия для разработки, поэтому я не решаюсь запустить ее в производство и не знаю, вызовет ли она проблемы для других частей моего кода база. Я мог бы также просто использовать JDBC-запросы, но тогда мне нужно заменить каждый экземпляр SQLQuery предложением group_concat.
Любые другие предложения?