[Hibernate] Автоинкремент

6yrop

можно ли сделать автоинкрементным поле, которое не является id?

Slavaga

Hibernate - это что?!
В MS SQL можно вроде.

anton7805

в MsSQL можно говоришь?

pitrik2

в MsSQL естессно можна
только это оффтоп
по сабжу:
кажись тег <generator> применим только внутри <id>
нет разве?
так что видимо нельзя

Hastya

возможно все
только кто это поле будет инкрементить

6yrop

спасибо, твой ответ очень информативен

Hastya

какой вопрос - такой ответ
автоинкрементные поля бывают в базе, а все-таки причем тут hibernate?

6yrop

автоинкрементные поля бывают в базе, а все-таки причем тут hibernate?
не хочу привязываться к конкретной базе. С Hibernate-ом это вроде как получается.

Hastya

тогда что ты понимаешь под автоинкрементным полем

pitrik2

в hibernate автоинкрементом считается поле на которое стоит генератор
тоесть
при сохранении нового объекта в БД, если у него некое поле будет стоять в NULL
то запустится генератор и сгенерит значение этого поля
генератором может быть поле identity в MsSQL
может быть вызов следущего значения секвенса в Oracle
может быть вообще вызов юзер-класса, который реализует генератор
обычно поле Id как раз и ставится автоинкрементным
а вот про другие поля это вопрос...

pitrik2

если ты поставил триггер на свое поле в БД
тойсть триггер вызывается при занесении записи в БД и генерирует значение поля
то это к hibernate не относится
это уже совсем другая задача
Оставить комментарий
Имя или ник:
Комментарий: