powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Обязан ли ключ быть Primary или достаточно Unique?
22 сообщений из 22, страница 1 из 1
Обязан ли ключ быть Primary или достаточно Unique?
    #37176816
aliputinaliputin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Обязательно ли, чтобы ключ был Primary или достаточно Unique?

Допустим, есть таблица с товарами, в ней суррогатный ключ (id), объявленный как Unique, но не Primary key. Чем мне это грозит?
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176827
Cane Cat Fisher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputin,

Если на эту таблицу потребуется сослать foreign key, то сумеет ли Ваша СУБД сослаться на unique? Некоторые умеют, некоторые нет..

Еще где-то была разница в обработке NULL-ов. Primary key их не допускает принципиально, а в unique у некоторых СУБД могут быть послабления...
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176828
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputinОбязательно ли, чтобы ключ был Primary или достаточно Unique?

Допустим, есть таблица с товарами, в ней суррогатный ключ (id), объявленный как Unique, но не Primary key. Чем мне это грозит?от СУБД зависит, индекс PK может быть кластерным (и только он) или не обязательно
опять же Unique возможно допускает NULL
смотреть СУБД надо
отсутствие у сущности PK но это не по-фэньшую ))
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176840
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputin, вообще некоторый функционал в СУБД может использовать Primary. Например, Снапшот репликация в Оракле. Можно и без него, но не рекомендуется. Он как бы в семантическом плане часто воспринимается как идентификатор: он может быть один в табле, а Unique несколько. (Идентификатор как бы претендует на не изменчивость, в отличии от просто уникальных значений). Это может упрощать восприятие и юзание МД.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176869
aliputinaliputin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MySQL 5.5
В базе множество таблиц. Ни в одной из них я не использую Primary, только Unique.
Пока проблем не наблюдал, но на всякий случай интересуюсь.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176901
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputinMySQL 5.5
В базе множество таблиц. Ни в одной из них я не использую Primary, только Unique.
Пока проблем не наблюдал, но на всякий случай интересуюсь.
а собственно почему?
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176910
aliputinaliputin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему не использую Primary? Хотя бы потому, что я могу обойтись и без него, как мне кажется.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176947
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputinПочему не использую Primary? Хотя бы потому, что я могу обойтись и без него, как мне кажется. и чем Unique лучше Primary?
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37176974
aliputinaliputin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тем, что Unique не хуже Primary.
Думаю, Primary - это статус ключа, без которого ключ не перестает быть ключом. Такой статус ключам в моих таблицах пока не нужен.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37177000
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NafaliputinaliputinПочему не использую Primary? Хотя бы потому, что я могу обойтись и без него, как мне кажется. и чем Unique лучше Primary?
Тем, что без примари враги не догадаются что у нас пк!! А если еще и форены убрать - вообще никто не догадается!
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37177021
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan DurakNafпропущено...
и чем Unique лучше Primary?
Тем, что без примари враги не догадаются что у нас пк!! А если еще и форены убрать - вообще никто не догадается!будет покруче чем в 1С
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37177053
alneo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
согласно феншуя у меня простое правило: первичный ключ служит для организации ссылочной целостности,
а уникальный просто чтобы значение поле было уникальным (MSSQL допускает одно Null значение в уникальном ключе)
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37177744
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputinДопустим, есть таблица с товарами, в ней суррогатный ключ (id), объявленный как Unique, но не Primary key. Чем мне это грозит?
Проблемами при использовании с этой таблицей плохо сделанных стандартных инструментов. Больше в общем-то ничем.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37189712
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 22.03.2011 11:32, aliputinaliputin wrote:
> Обязательно ли, чтобы ключ был Primary или достаточно Unique?

В принципе не обязан. PK от UN ничем в принципе не отличается.
Но если это у тебя ключ, то почему не сделать его PK ?
Это ты же сам себе же хуже делаешь.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37190128
Фотография Светлый_Дайвер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я прошу прощения... может отстал от жизни.
На сколько я помню из теории БД, то бывают:
- Первичные ключи
- Альтернативные
- Внешние
Первичный подразумевает уже уникальность.

Есть еще индексы, но это уже другое...
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37190999
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputinОбязательно ли, чтобы ключ был Primary или достаточно Unique?

Допустим, есть таблица с товарами, в ней суррогатный ключ (id), объявленный как Unique, но не Primary key. Чем мне это грозит?

У Вас нет БД. И нет приложенния БД. Пока. Поэтому ничем не грозит. Ваша программа работает так, как Вам надо, судя по всему. Значит все хорошо)
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37192093
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliputinaliputinMySQL 5.5
В базе множество таблиц. Ни в одной из них я не использую Primary, только Unique.
Пока проблем не наблюдал, но на всякий случай интересуюсь.А какой движок, MyISAM или InnoDB ?
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37193385
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Светлый_ДайверНа сколько я помню из теории БД, то бывают:
- Первичные ключи
- Альтернативные
- Внешние
Это звучит примерно как "Яйца бывают крутые, высшего сорта и обезьяньи". P.S. Намудрили в этой "теории БД" не по делу. Если Вам хочется пользоваться этой терминологией, считайте, что топикстартер говорит об альтернативных ключах.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37193644
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Светлый_ДайверЯ прошу прощения... может отстал от жизни.
На сколько я помню из теории БД, то бывают:
- Первичные ключи
- Альтернативные
- Внешние
Первичный подразумевает уже уникальность.

Есть еще индексы, но это уже другое...
Ну если брать тока теорию, то я помню, что там были ключи, выделеные ключи ну и типа суперключи.
Ключ там означет, что для мн-во арибутов значения уникальны в отношкении и никакое его собственное подмножество не обладает этим свойством. И не имеет значения выделены они: обявлены ключами в схеме или нет.
В теории это связано с ф-ми зависимостями, способами их навязывания. Ну типа она теория и занимается поисками формальных ответов на вопросы про оптимальность схемы. Для этого вроде не надо больше ниче про ключей и возможности или не возможности их навязать.
Но вот эта теория показала, что типа критериев оптимальной схемы выработать не получится в общем случае. Например, приведение к НФБК не позволит навязать все ф зависимости может, хотя 3НФ позволяет. Проектировщик стоит перед альтернативами.
В СУБД же немного пошире естенсвенно. Там и на семантичносить надо напирать и ораганизовывать ОЦ как можно больше декларативным способом (внешние ключи, на значения).
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37193652
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. в теории первичность, альтернативность, скорее всего, ниче не дает. И внешние тоже не привносят ответов на основные вопросы про оптимальность схемы в плане избыточность, аномалий, возможности навязывать ф зависмости и.
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37193782
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoТ.е. в теории первичность, альтернативность, скорее всего, ниче не дает.
В теории, как мне кажется, понятие "первичный ключ" ввели только для того, чтобы говорить "существует первичный ключ" вместо "существует хотя бы один ключ". Элементарно короче фраза
...
Рейтинг: 0 / 0
Обязан ли ключ быть Primary или достаточно Unique?
    #37193829
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerВ теории, как мне кажется, понятие "первичный ключ" ввели только для того, чтобы говорить "существует первичный ключ" вместо "существует хотя бы один ключ". Элементарно короче фраза
Я вот и думал, что в тероию это понятие и не вводили (не ясно что оно там дает). Это ввели в РМД в СУБД с тем чтобы была в принципе возможность выделить из множества выделенных ключей один особый. Например, для того чтобы претендовать на особую роль идентификатора. И для особой роли в некоторых фичах свяхзанной с идентификационной. Например, в репликации. В мультимастер репликации, по моему, без превичного ключа в Оракле табла в репликации вообще участвовать не может.
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Обязан ли ключ быть Primary или достаточно Unique?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]