Автор Jamset задал вопрос в разделе MySQL
Вопрос о первичных ключах в mysql и получил лучший ответ
Ответ от Капитан Гугл[гуру]
Код ПОЛНОСТЬЮ. Желательно не сюда, а на pastebin.com. Или даже на sqlfiddle.com, если осилишь. Без этого никто тебе не скажет, в чем проблема, разве что наугад.
Первичный ключ уникален как целое, а не по частям - например, можно представить базу автомобилей, где номера разобраны по кодам регионов: части не уникальны, номера в целом - уникальны.
Капитан Гугл
(144844)
Разница в том, что первичный ключ - это средство идентификации записи, а уникальность - просто свойство. Уникальные значения не обязательно идентифицируют запись.
Ответ от Максим[гуру]
Нет смысла делать ключами id и name, потому что id уже предполагает уникальный идентификатор. А вот например name и lastname другое дело. В этом случае просто совокупность этих двух полей будет уникальной (нельзя иметь двух человек с одинаковым именем) и через них будет ссылаться.
Нет смысла делать ключами id и name, потому что id уже предполагает уникальный идентификатор. А вот например name и lastname другое дело. В этом случае просто совокупность этих двух полей будет уникальной (нельзя иметь двух человек с одинаковым именем) и через них будет ссылаться.
Ответ от Jurijus Zaksas[гуру]
Если ключ составной, его уникальность определяется уникальностью сочетания всех полей. Поэтому отдельные значения могут повторяться.На первое поле у тебя может стоять какое-то дополнительное ограничение вроде уникального индекса - мне отсюда не видно - поэтому он и не принимает повторяющиеся значения.
Если ключ составной, его уникальность определяется уникальностью сочетания всех полей. Поэтому отдельные значения могут повторяться.На первое поле у тебя может стоять какое-то дополнительное ограничение вроде уникального индекса - мне отсюда не видно - поэтому он и не принимает повторяющиеся значения.
Ответ от Генадий Теркин[гуру]
Потому что здесь уже ключом является не одна колонка, а комбинация обеих. То есть 1,Петя и 1,Петя нильзя, а 1, Петя и 2, Петя можно
Потому что здесь уже ключом является не одна колонка, а комбинация обеих. То есть 1,Петя и 1,Петя нильзя, а 1, Петя и 2, Петя можно
Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Вопрос о первичных ключах в mysql