Hibernate вставить в избранный - PullRequest
0 голосов
/ 10 июля 2009

Как я могу сгенерировать операторы вставки типа insert into table (sequence.nextval, 'b0), используя hibernate?

В настоящее время Hibernate выбирает значение sequence.nextval и только затем использует это значение для вставки записи в таблицу.

Примечание: я не очень люблю генераторы пользовательских идентификаторов.

Ответы [ 2 ]

1 голос
/ 10 июля 2009

Hibernate выбирает sequence.nextval, потому что он должен вернуть вам это значение (например, установить идентификатор вашей сущности). Если вы не делаете что-то очень эзотерическое, я сильно сомневаюсь, что это сильно повлияет на производительность (например, это ничто по сравнению с реальной вставкой). Тем не менее, вы можете взглянуть на генератор hi-lo последовательности Hibernate - он будет обращаться к последовательности только время от времени вместо каждой вставки.

0 голосов
/ 10 июля 2009

Если вы используете клиент Oracle 10 или более поздней версии, проверьте идентичность последовательности в последних версиях Hibernate, чтобы выполнить то, о чем вы просите.

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