Можно ли autoincrement поле не использовать в Primary Key?
Есть таблица вида
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
user_num INT NOT NULL
Можно ли изменить Primary Key на комбинацию полей (user_id, user_num), оставив id Auto Increment.
Ответы (2 шт):
Автор решения: Sergei Buvaka
→ Ссылка
Можно. AuthoIncrement просто дает вам возможность не париться о том, чтоб у вас не было дублей. К примеру часто вместо AuthoIncrement используется какой-то внешний id.
Поэтому вы можете спокойно создавать любой id в том числе и комбинацию полей, но тогда на вас ложится ответственность за их уникальность.
UPD: как дополнил @Akina При явном задании duplicated value вместе с AuthoIncrement вы можете так же получить дубликаты.