Почему Nibernate HQL не может обработать следующий запрос:NHibernate и MySql Ключевые слова
from Deal D where (D.ApprovalDate + INTERVAL 1 Year) < current_timestamp() < (D.RenewalDate + INTERVAL -1 Year)
зная, что ИНТЕРВАЛ и YEAR ключевые слова в MySQL, так что это своего рода смешивание Sql в HQL (если HQL не может обрабатывать функции даты вроде так, и я не знаю). Диалект MySQLDialect
Сво вполне допустимо, чтобы выполнить этот запрос
SELECT '2005-01-01' + INTERVAL 1 Year;
Вы хотите использовать hql или sql? простите меня, если я не понял ничего из этого, но вы намеренно используете sql в hql? Я не уверен, если вы можете сделать это –
, вы используете правильный диалект? например MySQL5Dialect –
Я полагаю, что вы можете, HQL должен передать любую нетранслированную строку до механизма базы данных, чтобы понять ее ... По крайней мере, это то, что говорит документация –