Google в основном ответит на вопрос о PRIMARY KEY
/UNIQUE KEY
разница. Но как насчет KEY
/UNIQUE KEY
в MySQL? Разве KTK в MySQL однозначно идентифицирует кортеж?MySQL KEY/UNIQUE KEY
ответ
No, KEY
является псевдонимом для INDEX
. INDEX
не обязательно должен быть уникальным. Если KEY
(INDEX) однозначно идентифицировал кортеж (ряд), то это UNIQUE KEY
(или PRIMARY KEY
в зависимости от того, как вы определили этот ключ).
Ни в коем случае - столбец с ключом может иметь двойные значения, ключ помогает с их быстрым доступом. Уникальный ключ не позволит вставить строку с уже существующим значением в этом столбце.
«столбец с ключом может легко иметь повторяющиеся значения» - неужели это противоположность общепринятому определению ключа? – onedaywhen
не очень! Ключ - это не то же самое, что уникальный ключ - для последнего общепринятое определение и поведение MySQL должны не принимать дубликаты. –
Контекст здесь, без сомнения, является базами данных, и в этом контексте «ключ» является сокращением «ключа кандидата». Просмотрите любую родовую (не-mySQL) книгу, чтобы обнаружить это, например. [это определение в первой книге, которую я должен был передать:] (http://books.google.co.uk/books?id=TR8f5dtnC9IC&pg=PT83&lpg=PT83&dq=Then+K+is+a+candidate+key+ (или + просто + клавиша + для + краткости) + дл & источник = бл & отс = jrP6trfE5S & сиг = XuY1FsBNxGjbAPJmuFKMn3DXbEA & гл = еп & са = Х & е = 2bUGT97PBMeX8gOTvZnEAQ & вед = 0CB4Q6AEwAA # v = OnePage & д = Тогда% 20K% 20is% 20a% 20candidate% 20key% 20 (или% 20just% 20key% 20for% 20short)% 20for & f = false) – onedaywhen
В теории базы данных «ключ» является синонимом уникального ограничения. Некоторые системы управления базами данных используют индекс (физический) для реализации уникального ограничения (логического) и называются «уникальным индексом».
Для mySQL-продукта KEY
является синонимом уникального индекса, и я считаю, что использование является интуитивно понятным.
У вас есть ресурс, который говорит, что 'key' является синонимом уникального ограничения? Я не читал нигде, что 'key' == уникальное ограничение. –
@ N.B .: Думаю, вам будет проще искать источники, которые «ключ» не означает уникальность. Начните с «superkey», затем перейдите к «кандидатному ключу» (минимальному суперключу), «первичному ключу» (произвольному ключу кандидата), «внешнему ключу» (ссылается на ключ-кандидат) и за его пределами. – onedaywhen
Итак, нижняя строка заключается в том, что у вас нет источника, подтверждающего, что ключ == уникальный ключ? –
Я знаю, что это старая нить, но @oneday, если здесь правильно. В теории баз данных термин «ключ» относится к кандидату или супер-ключу, а ключ-кандидат - это минимальный супер-ключ. Первичный ключ выбран как один из ключей-кандидатов, если несколько, поэтому «ключ» уникален. В случае необходимости я могу ссылаться на мою книгу БД, используемую в университете.
Да, точно! @onedaywhen – Susinthiran
- 1. mysql merge primary key
- 2. NHibernate MySQL Composite-Key
- 3. MySQL: Foreign Key
- 4. mysql forein key error
- 5. Помощь MySQL FOREIGN KEY
- 6. mysql unique key
- 7. MySQL add Foreign Key
- 8. Mysql Таблица Key
- 9. MySQL "KEY" ключевое слово
- 10. MySql: Composite Unique Key
- 11. MySQL KEY question
- 12. MySQL DB Foreign Key
- 13. Foreign Key Constraint Mysql
- 14. Mysql Encryption Key
- 15. mysql workbench duplicate key error
- 16. Nodejs MySQL дублированием KEY UPDATE
- 17. Mysql + ON DUPLICATE KEY UPDATE
- 18. MySQL Composite Primary Key Duplicate
- 19. MySQL FOREIGN KEY Ограничения Синтаксис
- 20. mysql ON DUPLICATE KEY UPDATE
- 21. Собственная таблица MySQL External Key
- 22. MYSQL- SELF REFERENCING FOREIGN KEY
- 23. PHP Mysql Increment Foreign Key
- 24. MYSQL Composite Key для «FriendList»
- 25. Ошибка MySQL: 1215 Foreign Key
- 26. Синтаксис MySQL CONSTRAINT FOREIGN KEY
- 27. MYSQL KEY-VALUE PAIR Жизнеспособность
- 28. MySQL, IF ON DUPLICATE KEY
- 29. Форвардная инженерия mysql Foreign key
- 30. mysql external key using phpmyadmin
Это помогло. Спасибо :) – user1132121