Есть ли способ заставить Hibernate использовать буквальные значения, а не связывать переменные?

В Oracle у меня есть многораздельная таблица. Разделы имеют разный размер и разное распределение данных.

Я хотел бы, чтобы SQL-операторы спящего режима включали буквальное значение для столбца ключа раздела, а не связываемую переменную. Конечно, он должен использовать переменные связывания для любых других значений.

Использование литерала для ключа раздела позволит Oracle разработать план, специфичный для известного раздела и собранной статистики. Это также может быть полезно для столбцов, в которых есть гистограмма для искаженных данных.

Было бы предпочтительнее указывать это в сущности, иначе нам нужно будет делать это в каждом запросе. Есть ли способ сделать это в спящем режиме?

Мы находимся в спящем режиме 3.6.1, используя Oracle 10g Dialect.

Если в Hibernate нет возможности сделать это изначально, могу ли я создать тип пользователя, диалект или что-то еще, чтобы это произошло?

7
задан WW. 25 November 2011 в 03:37
поделиться