powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Подскажите по 2НФ
37 сообщений из 37, показаны все 2 страниц
Подскажите по 2НФ
    #39911331
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть справочник сотрудников, справочник должностей с целочисленными ПК.

Можно ли сказать, что данная таблица соответствия "должность - сотрудник" находится во 2-й НФ ?

Или нужен отдельный целочисленный ПК на каждую строку таблицы?
Ведь ID сотрудника или ID должности можно рассматривать не только как часть ключа (ключевые поля), но и как поля с данными. Тогда получается, что данные зависят от части ключа.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911334
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentatorВедь ID сотрудника или ID должности можно рассматривать не только как часть ключа
(ключевые поля), но и как поля с данными.

Нельзя. Ты не можешь на их основе вычислить другие значения без привлечения внешних
справочников.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911348
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911392
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
defragmentatorВедь ID сотрудника или ID должности можно рассматривать не только как часть ключа
(ключевые поля), но и как поля с данными.

Нельзя. Ты не можешь на их основе вычислить другие значения без привлечения внешних
справочников.

А зачем вычислять их значения?
Достаточно того, что данные зависят от части ключа, что уже плохо.
Например, кто-нибудь захочет удалить какую-либо должность как изжившию себя морально.
А в таблице соответствия оставит NULL. Получится запись, потерявшая смысл. А кроме того, и задвоение ключа может получиться таким образом.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911401
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для этого FK есть
и обычный JOIN отсеет такие записи, например
либо LEFT JOIN - покажет пустышку
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911403
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentatorА зачем вычислять их значения?

Затем, что именно это подразумевается у второй НФ под "зависят". Она устраняет
"горизонтальную" избыточность, когда одни данные в одной записи могут быть выведены из
других данных той же записи.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911404
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно обойти все глюки, без сомнения.
Только вот не правильней ли отказаться от составного ключа из атрибутов, которые являются данными?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911407
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

может быть так.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911408
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentatorНапример, кто-нибудь захочет удалить какую-либо должность как изжившию себя морально.
А в таблице соответствия оставит NULL. Получится запись, потерявшая смысл. А кроме того, и
задвоение ключа может получиться таким образом.

А за это отвечают третья НФ и внешние ключи.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911430
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух


Кодд или Дейт?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911433
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИВП
полудух


Кодд или Дейт?




...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911444
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИВП
полудух


Кодд или Дейт?

нет.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911445
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
он приварил в микросхему муравья...
больной ублюдок.
(когда не знаешь, что поставить на обложку, но очень хочется, чтоб купили)
а ещё он одно и тоже продаёт 8 раз...
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911497
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator
Dimitry Sibiryakov
Ты не можешь на их основе вычислить другие значения без привлечения внешних справочников.
А зачем вычислять их значения?
Достаточно того, что данные зависят от части ключа, что уже плохо.
Формально, нормализация относится к одной таблице и не играет роли её связь с другими, т.е., в теории РМД функциональные зависимости рассматриваются только между атрибутами одной сущности.

P.S. Иногда говорят что БД, находится в 3НФ, но это лишь подразумевает, что все таблицы в БД находятся не ниже, чем в 3НФ. К понятию НФ в РМД это не имеет никакого отношения.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39911781
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator
Есть справочник сотрудников, справочник должностей с целочисленными ПК.

Можно ли сказать, что данная таблица соответствия "должность - сотрудник" находится во 2-й НФ ?

Или нужен отдельный целочисленный ПК на каждую строку таблицы?
Ведь ID сотрудника или ID должности можно рассматривать не только как часть ключа (ключевые поля), но и как поля с данными. Тогда получается, что данные зависят от части ключа.


Для нарушения 2НФ, впрочем, как и всех кроме 1НФ, нужно как минимум три колонки.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39912226
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChA
Формально, нормализация относится к одной таблице и не играет роли её связь с другими, т.е., в теории РМД функциональные зависимости рассматриваются только между атрибутами одной сущности.


Можно найти кучу примеров, в которых происходит декомпозиция отношения.
То есть одна таблица превращается в несколько.
После этого говорят, что основная таблица находится в какой-либо НФ.
Остальные таблицы, естественно, просто вспомогательные.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39912237
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator
ChA
Формально, нормализация относится к одной таблице и не играет роли её связь с другими, т.е., в теории РМД функциональные зависимости рассматриваются только между атрибутами одной сущности.
Можно найти кучу примеров, в которых происходит декомпозиция отношения. То есть одна таблица превращается в несколько.После этого говорят, что основная таблица находится в какой-либо НФ. Остальные таблицы, естественно, просто вспомогательные.
Если нарушается определённая НФ в таблице, то между полями существует некая функциональная зависимость(ФЗ), от которой можно избавиться, выполнив декомпозицию этой таблицы. Каждая полученная в результате декомпозиции таблица тоже может иметь нарушение НФ и для неё, в свою очередь, также может быть выполнена декомпозиция. Получившиеся в ходе декомпозиции таблицы рассматривается индивидуально, без каких-либо отсылок к "родительской". Фактически, декомпозиция всего лишь процесс приведения таблиц в определённую НФ и далеко не всегда приведение ведётся до максимально известной НФ. Собственно в этом и заключается процесс проектирования реляционных БД, свести ФЗ внутри отдельных таблиц к заданному минимуму с помощью различных методик. Но повторюсь ещё раз, функциональные зависимости, как признак нарушения какой-либо НФ всегда рассматривается только относительно конкретной таблицы, а не в связи с другими, об этом говорится во всех учебных пособиях по проектированию БД, где хоть немного затрагиваются теоретические основы РМД, включающие в себя определения ФЗ, и, соответственно, НФ.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39912602
Сотрудник Главного Управления
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
Это, пожалуй, одна из самых худших статей по нормальным формам.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913213
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
полудух
он приварил в микросхему муравья...
Это не муравей, а паук есть.
Лапы пересчитайте.

полудух
больной ублюдок.
Муравей-паук заболел?

полудух
а ещё он одно и тоже продаёт 8 раз...
Нет. Не одно и то же.

https://ru.wikipedia.org/wiki/Введение_в_системы_баз_данных Впервые книга вышла в 1975 году в издательстве Addison–Wesley. В процессе переизданий книга существенно перерабатывалась, в частности, в 1990-е годы были исключены главы об иерархической и сетевой моделях данных и включены сведения о набиравших популярность объектно-ориентированных, распределённых, дедуктивных системах. Включая все переиздания на английском языке суммарный тираж составил 700 тыс. экземпляров.

На русском языке в 1980 году в издательстве «Наука» выпущен перевод 2-го издания. Отмечается, что именно этот перевод установил терминологию в сфере реляционных баз данных. С конца 1990-х годов переводы очередных изданий книги выпускались издательствами «Вильямс» и «Диалектика».
Современный перевод одного из изданий ужасен был.
Читать только через силу мне его удавалось.
В этом восьмом издании перевод лучше сделали, надеюсь.

М.Р.Когаловский перевод второго издания этой книги отлично сделал!
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913218
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сотрудник Главного Управления
полудух
Это, пожалуй, одна из самых худших статей по нормальным формам.

ну так давайте свою, лучшую из лучших , залайканную до дыр на хабре.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913219
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
В этом восьмом издании перевод лучше сделали, надеюсь.

ну если нет, то всегда можно выпустить 9е издание... и снова заработать
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913261
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
полудух
Сотрудник Главного Управления
пропущено...
Это, пожалуй, одна из самых худших статей по нормальным формам.

ну так давайте свою, лучшую из лучших , залайканную до дыр на хабре.
Хабру в даль светлую отправляйте.

Тут точнее всё написано:
http://wiki.mvtom.ru/index.php/Теория_нормальных_форм

С карандашом и бумагой внимательно прочитайте.
Свои примеры придумайте.

Что останется неясно потом спросите.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913263
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
полудух
Daniel Logovenko
В этом восьмом издании перевод лучше сделали, надеюсь.

ну если нет, то всегда можно выпустить 9е издание... и снова заработать
А почему вы так не зарабатываете?
Это же совсем легко что-то всем много лет интересное написать! :)
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913285
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Daniel Logovenko
М.Р.Когаловский перевод второго издания этой книги отлично сделал!
Поправку добавляю.

Книгу Криса Дейта "Введение в системы баз данных" (Москва, "Наука", 1980)
в отсканированном виде я нашел http://padabum.com/d.php?id=35210

Когаловский эту книгу не переводил.
Её отлично другие люди перевели:
коллектив переводчиков под руководством Виктора Минаева
и научного редактора Руслана Смелянского.

М.Р.Когаловский другую книгу Дейта "Руководство по реляционной СУБД DB2" на русский язык перевел.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913325
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
полудух
пропущено...

ну так давайте свою, лучшую из лучших , залайканную до дыр на хабре.
Хабру в даль светлую отправляйте.

Тут точнее всё написано:
http://wiki.mvtom.ru/index.php/Теория_нормальных_форм

С карандашом и бумагой внимательно прочитайте.
Свои примеры придумайте.

Что останется неясно потом спросите.

те же яйца, только в профиль.
демагогов надо в даль отправлять. Подальше с этого форума.
Daniel Logovenko
А почему вы так не зарабатываете?

Потому что это копейки.
Это же совсем легко что-то всем много лет интересное написать! :)
"легко" написать херню - ваще элементарно.
А вот "что-то интересное" - уже не менее 8-ми изданий надо, оказывается.
Daniel Logovenko
Книгу Криса Дейта "Введение в системы баз данных" (Москва, "Наука", 1980)

введение в базы данных 80го года...
Вы что под кайфом?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913337
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
полудух
Daniel Logovenko
Книгу Криса Дейта "Введение в системы баз данных" (Москва, "Наука", 1980)

введение в базы данных 80го года...
Вы что под кайфом?

"Введение в системы баз данных"

Чувствуете разницу?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913595
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator
Есть справочник сотрудников, справочник должностей с целочисленными ПК.

Можно ли сказать, что данная таблица соответствия "должность - сотрудник" находится во 2-й НФ ?

Или нужен отдельный целочисленный ПК на каждую строку таблицы?
Ведь ID сотрудника или ID должности можно рассматривать не только как часть ключа (ключевые поля), но и как поля с данными. Тогда получается, что данные зависят от части ключа.


Тут нет атрибутов вообще, оба поля -- в ПК.
Конечно, таблица находится в 2НФ.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39913670
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
Тут нет атрибутов вообще

Тогда таблица не несёт в себе никакой информации?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914020
Sergei.Agalakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator,
Как не несет информации? Она разрешает многие-к-многим отношение между сотрудниками и должностями.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914044
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergei.Agalakov
Она разрешает многие-к-многим отношение между сотрудниками и должностями.

То есть информация о том, какие должности занимает каждый сотрудник.
Можно ли назвать эту информацию атрибутами отношения?
Если да, то можно ли сказать, что данные зависят от части ключа?

Или как, уже было сказано выше, ID - это не данные?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914054
Фотография Ennor Tiegael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
Тут нет неключевых атрибутов вообще, оба поля -- в ПК.
Полагаю, именно это имелось в виду.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914153
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator
Sergei.Agalakov
Она разрешает многие-к-многим отношение между сотрудниками и должностями.
Можно ли назвать эту информацию атрибутами отношения?
Безусловно.
defragmentator
Если да, то можно ли сказать, что данные зависят от части ключа?
Не видно оснований для такого утверждения. В таком случае вы могли бы по одному полю восстановить значение второго, что по примеру неочевидно.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914395
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChA
defragmentator
пропущено...
Можно ли назвать эту информацию атрибутами отношения?
Безусловно.
defragmentator
Если да, то можно ли сказать, что данные зависят от части ключа?
Не видно оснований для такого утверждения. В таком случае вы могли бы по одному полю восстановить значение второго, что по примеру неочевидно.


Данные совпадают с частью ключа.
ID должности - это и данные, и часть ключа.
Или я что-то недопонимаю?
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914475
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentator
ChA
Данные совпадают с частью ключа. ID должности - это и данные, и часть ключа. Или я что-то недопонимаю?
Первичны атрибуты, не важно, входят они в состав ключа или нет. Ключ же просто является способом однозначной идентификации элемента множества(записи), опираясь на комбинацию атрибутов. Он не существует отдельно, сам по себе. Даже в случае использования суррогатных ключей вводится искусственный атрибут с гарантировано не повторяющимися значениями на множестве этого отношения.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914503
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentatorДанные совпадают с частью ключа.

Каким именно данные? Если эти данные из записи удалить, ты сможешь их восстановить по
"части ключа"?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914583
Фотография defragmentator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
defragmentatorДанные совпадают с частью ключа.

Каким именно данные? Если эти данные из записи удалить, ты сможешь их восстановить по
"части ключа"?
Нет, не смогу.
...
Рейтинг: 0 / 0
Подскажите по 2НФ
    #39914585
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defragmentatorНет, не смогу.

Значит они не совпадают. И не зависят. Вторая НФ удовлетворена.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
37 сообщений из 37, показаны все 2 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Подскажите по 2НФ
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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