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

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

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

7 ответов

26 просмотров

можешь воспользоваться @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. Автор вопроса

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта