Встречается на собеседованиях • сегодня

Может ли быть два одинаковых Primary Key

Нет, Primary Key (первичный ключ) в реляционных базах данных должен быть уникальным для каждой записи в таблице. Это одно из основных ограничений первичного ключа. Если попытаться вставить или обновить запись с уже существующим значением PK, будет вызвано исключение ConstraintViolationException (в Java при использовании JDBC или JPA).

Пример с JPA/Hibernate:

java
@Entity
public class User {
    @Id
    private Long id;  // Это поле - Primary Key
    
    private String name;
    // другие поля
}

// При попытке сохранить два объекта с одинаковым id
User user1 = new User(1L, "Alice");
User user2 = new User(1L, "Bob");  // Одинаковый PK!

entityManager.persist(user1);  // ОК
entityManager.persist(user2);  // Выбросит исключение

В составных первичных ключах (@EmbeddedId) уникальность определяется по комбинации всех полей ключа.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы