169 похожих чатов

Всем привет. Вопрос следующий. Есть Entity, в которой я пропускаю

заполнение поля типа ZonedDateTime
В таблице есть constraint not null на это поле + default value = now().
Кажется, если значение поля в Ентити == налл, то должно вычислить дефолтное?
Как мне прийти к такому пути?

7 ответов

8 просмотров

можешь воспользоваться @UpdateTimestamp и @CreationTimestamp если эти поля твои нужны для сохранения подобной инфы (я сужу по твоему дефолтному now()). либо можешь воспользоваться @Column(… columnDefinition=“DATE not null constraint default now()”)

Дэни
можешь воспользоваться @UpdateTimestamp и @Creatio...

Дисклеймер: мои ответы должны быть адаптированы по месту применения

javabydeveloper.com/jpa-hibernate-default-column-values/

Alex-K. Автор вопроса
Дэни
javabydeveloper.com/jpa-hibernate-default-column-v...

Да, это конечно замечательно, но почему на стороне БД это не генерируется? Ведь цель - отдать на откуп СУБД, а не генерить дефолт при создании сущности, только при вставке, если она пройдёт успешно.

Alex K.
Да, это конечно замечательно, но почему на стороне...

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

Alex-K. Автор вопроса

Похожие вопросы

Обсуждают сегодня

Комрады, посоветуйте, куда копать? Стал прикручивать кастомизацию тем. В OnShow главной главной формы пытаюсь загрузить из файла настроек и применить тему (на скрине, как долж...
Ed Doc
13
OnShow один раз вызывается? или возможен Hide?
Iluha Companets
14
Такс, блин, таки кто-то знает, каким образом работают макросы stdin/stdout/stderr? Я влез в stdio.h, там определения нет, отладил через асмокод - вызывается функция со странны...
The Bird of Hermes
18
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет, на линуксе лучше на fasm или nasm учиться писать для начала ?
meszjol
14
Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
@sand_witch скорее к тебе вопрос, добавил в .cabal webdriver-w3c и вот такая ошибка от nix develop error: Package ‘script-monad-0.0.4’ in /nix/store/7vdxbra0kwbr0ys0kc5...
Fedor
5
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
Карта сайта