Junior — Middle
Une partie d'une clé primaire composée peut-elle avoir une valeur null?
sobes.tech IA
Réponse de l'IA
В составном первичном ключе (composite primary key) в базе данных ни одна из частей не может иметь значение null. Это связано с тем, что первичный ключ должен однозначно идентифицировать запись, а null означает отсутствие значения, что нарушает уникальность и целостность данных.
В Java, если вы используете составной ключ, например, в JPA, все поля, входящие в составной ключ, должны быть не null.
Пример составного ключа в JPA:
@Embeddable
public class OrderItemId implements Serializable {
private Long orderId;
private Long productId;
// геттеры, сеттеры, equals и hashCode
}
@Entity
public class OrderItem {
@EmbeddedId
private OrderItemId id;
// другие поля
}
Значения orderId и productId должны быть заполнены и не могут быть null.