This is my product Entity
@Entity
public class Product {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@NotNull
private String name;
private String cancellable;
private String returnable;
@NotNull
private String brand;
private boolean active;
@JsonIgnore
@OneToMany(mappedBy = "product",cascade = CascadeType.ALL)
private Set<ProductVariation> productVariationSet;
}
This is Product Variant Entity
@Entity
public class ProductVariation {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
private String ProductName;
@NotNull
private int quantityavailable;
@NotNull
private int price;
private String details;
@JsonIgnore
@ManyToOne
@JoinColumn(name = "product_id")
private Product product;
}
когда я пытаюсь удалить продукты по идентификатору, я получаю сообщение об ошибке, например
java. sql .SQLIntegrityConstraintViolationException: невозможно удалить или обновить родительскую строку: ограничение внешнего ключа не выполнено ( mywebapp
. product_variation
, ОГРАНИЧЕНИЕ FKpryf02se86hpv5v7xn5afye4v
ИНОСТРАННЫЙ КЛЮЧ (product_id
) ССЫЛКИ product
(id
))
Как я могу исправить эту ошибку и удалить продукт, чтобы все его варианты также были удалить.