powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / 3NF
22 сообщений из 22, страница 1 из 1
3NF
    #36388042
3NF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
3NF
Гость
wikipediaТаблица находится в третьей нормальной форме (3NF), если она находится во второй нормальной форме 2NF и при этом любой ее неключевой атрибут зависит только от первичного ключа (Primary key, PK)
Таким образом, для таблицы с первичным ключем наличие Unique constraint на not null поле нарушает 3-ю нормальную форму?
...
Рейтинг: 0 / 0
3NF
    #36388065
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То что Вы написали это форма Бойса-Кодда.
Нарушение 3НФ:
A->B B->C, но В не определяет А
...
Рейтинг: 0 / 0
3NF
    #36388072
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторТаким образом, для таблицы с первичным ключем наличие Unique constraint на not null поле нарушает 3-ю нормальную форму?
нет, первичный ключ не обязан быть единственным
...
Рейтинг: 0 / 0
3NF
    #36388444
Фотография adv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
muk07авторТаким образом, для таблицы с первичным ключем наличие Unique constraint на not null поле нарушает 3-ю нормальную форму?
нет, первичный ключ не обязан быть единственныммук07, а что первичных ключей может быть больше 1? :)

Или вы про потенциальные ключи?

3NF, потенциальные ключи не являются неключевыми атрибутами.
...
Рейтинг: 0 / 0
3NF
    #36388505
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В рамках конкретного изделия (MS SQL SERVER) принято 1чн ключ считать единственным.
В рамках Теор норм форм
1чн ключ определяется:
1) определяет функционально все ост атриб отношения
2) ни один атрибут не м быть удален из 1чн ключа без нарушения св-ва 1

т.е. в MS SQL и ТНФ 1чн ключ - 2 разные понятия
...
Рейтинг: 0 / 0
3NF
    #36388580
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
muk07В рамках конкретного изделия (MS SQL SERVER) принято 1чн ключ считать единственным.
В рамках Теор норм форм
1чн ключ определяется:
1) определяет функционально все ост атриб отношения
2) ни один атрибут не м быть удален из 1чн ключа без нарушения св-ва 1

т.е. в MS SQL и ТНФ 1чн ключ - 2 разные понятиявы это сами придумали, или прочитали где?
...
Рейтинг: 0 / 0
3NF
    #36388791
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
например
1)Дж Ульман. Основы систем баз данных. Финансы и статистика 1983.
2)Мейер Теория реляционных баз данных.
(Хорошее математическое обоснование, но читать её не подарок)
...
Рейтинг: 0 / 0
3NF
    #36388872
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
muk07,
и в этих книгах написан этот бред: muk07В рамках конкретного изделия (MS SQL SERVER) принято 1чн ключ считать единственным. или всё же это вы сами изобрели?
...
Рейтинг: 0 / 0
3NF
    #36389153
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вы попробуйте назначить 2 разных primary key на одну таблицу.
Вы бы почитали хоть что нибудь
...
Рейтинг: 0 / 0
3NF
    #36389161
3NFwikipediaТаблица находится в третьей нормальной форме (3NF), если она находится во второй нормальной форме 2NF и при этом любой ее неключевой атрибут зависит только от первичного ключа (Primary key, PK)
Таким образом, для таблицы с первичным ключем наличие Unique constraint на not null поле нарушает 3-ю нормальную форму?

Определения нормальных форм, в которых фигурирует термин "первичный ключ", не вполне корректны, это дань истории и педагогическому упрощению. Везде в этих определениях, строго говоря, следует использовать термин "потенциальный ключ". Тогда ваш вопрос исчезает.


muk07То что Вы написали это форма Бойса-Кодда.
Это не форма Бойса-Кодда. В форме Бойса-Кодда говорится о всех (любых) атрибутах, а не только о неключевых, в этом её и отличие от 3НФ. Нормальная форма Бойса-Кодда формулируется проще всего: каждый детерминант (функциональной зависимости) является потенциальным ключом .
...
Рейтинг: 0 / 0
3NF
    #36389177
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начиная c конца 70х каждая коммерческая фирма вводила свою терминологию, не желая помнить родства. Труды CODASYL, которая очень много сделала для наведения порядка, уже 100 лет не упоминаются. Снова образовалась каша.
Есть термины "первичный ключ", "потенциальный ключ", "ключ - кандидат", "возможный ключ" etc.
ТНФ (а это всё же математика) попрежнему пользуется своей терминологией.
С Вашей поправкой:
"Каждая детерминанта (левая часть зависимости) является 1чн ключом"
согласен. (надо было раньше ложиться спать).
...
Рейтинг: 0 / 0
3NF
    #36389214
muk07Начиная c конца 70х каждая коммерческая фирма вводила свою терминологию, не желая помнить родства. Труды CODASYL, которая очень много сделала для наведения порядка, уже 100 лет не упоминаются. Снова образовалась каша.
Есть термины "первичный ключ", "потенциальный ключ", "ключ - кандидат", "возможный ключ" etc.
ТНФ (а это всё же математика) попрежнему пользуется своей терминологией.
С Вашей поправкой:
"Каждая детерминанта (левая часть зависимости) является 1чн ключом"
согласен. (надо было раньше ложиться спать).В обсуждаемом вопросе коммерческие фирмы, равно как и их терминология, не при чём. Обсуждаемые термины введены отнюдь не коммерческими фирмами, а в трудах теоретиков баз данных. "Потенциальный ключ", "ключ - кандидат", "возможный ключ" -- не разные термины, а разные переводы на русский одного и того же термина candidate key , да и то давным-давно утвердился канонический вариант перевода, а именно " потенциальный ключ ". Другие варианты являются экзотикой, в литературе практически не встречаются.

Так что каши никакой нет. То есть каша есть, но она скорее в головах тех, кого плохо учили в университете, или кто не читал нормальных книг по БД. Я, кстати, не уверен, что нормальной кенигой можно назвать такую, где в определениях нормальных форм используется исключительно термин "первичный ключ", вместо "потенциальный", или же отсутствуют хотя бы комментарии, в который бы разъяснялась эта ситуация. А потом от чтения таких книг и появляются недоумённые вопросы топикстартера.
...
Рейтинг: 0 / 0
3NF
    #36389271
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще то Ульман, Фейгин, Мейер для меня - авторитеты.
Для Вас видимо, нет.
...
Рейтинг: 0 / 0
3NF
    #36389344
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
muk07А вы попробуйте назначить 2 разных primary key на одну таблицу.
Вы бы почитали хоть что нибудьну ясно: не различаем первичный ключ и потенциальный, то есть не отличаем теорию от её конкретной реализации, что подтверждает ваша дискуссия с Евгением Мирошниченко aka mir.
ЗЫ Дейта читайте, Дейта.
...
Рейтинг: 0 / 0
3NF
    #36389565
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
короче - есть primary key, оно так и называется в РСУБД, а есть alternate key, это просто constraint unique. Например,
код - PK
ФИО
паспорт - уникальный столбец (unique).

p.s. alternate key = потенциальный ключ, candidate key и т.п. Т.е. то, что могло бы претендовать на роль ПК, но не на 100%.
...
Рейтинг: 0 / 0
3NF
    #36389595
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvp.s. alternate key = потенциальный ключ, candidate key и т.п. Т.е. то, что могло бы претендовать на роль ПК, но не на 100%.почему это не на 100%? как раз на 100%: любой из альтернативных ключей может быть выбран в качестве primary, по крайней мере, с точки зрения теории. Дополнительные факторы, влияющие на выбор PK, к теории отношение имеют слабое, скорее, это опыт проектировщика, производительность и удобство сопровождения БД.
...
Рейтинг: 0 / 0
3NF
    #36390520
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ой, ребята, отличаайте ТНФ ( это раздел математики) от документации.
...
Рейтинг: 0 / 0
3NF
    #36390542
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
happy new year! много не пейте
...
Рейтинг: 0 / 0
3NF
    #36390587
Фотография Жук в муравейнике
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Третья нормальная форма требует отсуствие транзитивных зависимостей. По сути вынос в справочник.
Википедия пишет:Таблица может находиться в 3NF, но не в BCNF, только в одном случае:
если она имеет, помимо первичного ключа, ещё по крайней мере один возможный ключ
...
Рейтинг: 0 / 0
3NF
    #36390623
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
странные вещи пишет википедия
я (ссылка на определение) полагаю, что если часть первичного ключа зависит от чего либо ещё, то нарушена форма бойса - кодда.
Happy new year
...
Рейтинг: 0 / 0
3NF
    #36390628
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мир с ними обоими
...
Рейтинг: 0 / 0
3NF
    #36391868
Фотография Жук в муравейнике
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На википедии таки поправили. Ми здобули !
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / 3NF
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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