#postgresql #spring-boot #jpa #spring-data-jpa
Вопрос:
Я пытаюсь добавить новый столбец в таблицу со значением по умолчанию «false».
Я пытался
private boolean fo_create = false; @Builder.Default private Boolean fo_created = Boolean.false; @Column(columnDefinition = "boolean default false") private boolean fo_created = false;
Но ничего из этого не работает. При использовании типа «Логическое значение» столбец создается, но остается пустым. При использовании логического типа JPA выдает ошибку и сообщает, что не может установить логическое значение null ( хотя я указал значение по умолчанию false).
Кто-нибудь может помочь мне решить эту проблему ?
Комментарии:
1. Если значение в базе данных может быть нулевым, вы должны использовать логическое значение. Как вы убираете стол в ящик?
Ответ №1:
Код класса сущностей
package com.example.demo.Entity; import java.math.BigInteger; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; import lombok.Data; /** * @author Sathiyaraj Ramamurthy 16 Nov 2021 5:47:26 AM * */ @Data @Entity @Table(name = "event") public class EventDemo { @Id @Column(name="id") @GeneratedValue(strategy=GenerationType.AUTO) private long id; @Column(name = "event_name") private String eventName; @Column(name = "status", columnDefinition="tinyint(1) default 1") private boolean status; }
Подробности запроса почтальона
Я использую базу данных MySQL. Я полагаю, что это будет работать и в Postgres