createSQLQuery для HQL - PullRequest
       1

createSQLQuery для HQL

0 голосов
/ 01 февраля 2011

Прежде всего, я новичок в Spring MVC и в спящем режиме. Мой старший сказал мне, что в нашем проекте они использовали createSQLQuery для запуска sql во многих местах, теперь он хочет, чтобы я составил подробный список, который все они могут быть преобразованы в HQL, а какие нет.

Раньше я не использовал createSQLQuery или HQL, так как я мог сказать ему, какой createSQLQuery можно преобразовать в HQL, а какой нет.

1 Ответ

3 голосов
/ 01 февраля 2011

По сути, вам нужно изучить Hibernate и HQL, чтобы ответить на этот вопрос.

Из практики следующие типы SQL-запросов обычно не могут быть преобразованы в HQL:

  • Запросы к таблицам или представлениям, не отображаемым в Hibernate
  • Запросы с подзапросами в предложениях SELECT и FROM (если их невозможно переписать в эквивалентную форму без этих подзапросов)
  • Запросы с UNION, INTERSECT, EXCEPT.
  • Запросы, использующие специфичные для СУБД функции

Также обратите внимание, что HQL-запросы иногда дают неоптимальный SQL-запрос, поэтому некоторые запросы могут быть представлены в SQL-коде, созданном вручную для повышения производительности.

Смотри также:

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