JPA не установит значение по умолчанию в логический столбец в базе данных Postgres

#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