Может ли многозначный атрибут иметь первичный ключ?

Функциональные зависимости - это атрибуты, в которых их значения уникальным образом определяются другим атрибутом. При условии, что многозначный атрибут может зависеть от первичного ключа?

1 ответ

  1. "FDs - это атрибуты, которые по своим значениям определяются уникальным образом другим атрибутом", - неразборчиво. Найдите способ сказать это правильно или как вы можете это понять?

  2. Атрибут (или набор атрибутов) функционально определяется набором атрибутов.

  3. Не существует такого понятия, как "многозначный атрибут" в отношении. Кортеж имеет значение атрибута для каждого имени атрибута. (Может быть, вы имеете в виду, что набор атрибутов определяется? Может быть, вы имеете в виду многозначную зависимость?) Если у вас есть атрибут, который, по вашему мнению, содержит несколько частей, т.е. вы хотите выполнить общий запрос о деталях без использования операторов с параметры их типов, то обычно хорошо иметь отдельную таблицу с атрибутами для этих частей. Но это не решается путем нормализации. Можно считать, что любое значение состоит из нескольких частей несколькими способами, и именно ваше приложение / запросы определяют, когда вы прекращаете создавать таблицы, чьи атрибуты являются значениями частей других значений и просто имеют атрибут для значения. Точно так же, если у вас есть набор атрибутов, которые играют сходную роль (часто с похожими именами), то обычно хорошо иметь отдельную таблицу с одним атрибутом для роли. Но это не решается путем нормализации.

  4. Ключи- кандидаты имеют значение для FD, MVD, JD и нормализации. ПК не делают. Вы можете выбрать один CK как "PK", но его первичность не имеет отношения к реляционной модели. Это может иметь отношение к некоторому методу или продукту информационного моделирования.

  5. Суперключи - это наборы столбцов, которые определяют каждый столбец. Поскольку каждый набор атрибутов всегда определяет атрибуты в нем, суперключи - это наборы столбцов, которые определяют каждый второй столбец. CK - это суперключи, которые не содержат меньших суперключей. (Таким образом, CK - это наборы столбцов, которые являются уникальными, но содержат не меньший набор столбцов, которые являются уникальными.)

  6. Вы не знаете все CK, пока не найдете все FD. Но вы можете знать, что определенный набор атрибутов уникален и не имеет меньшего уникального набора, так что вы знаете, что это CK, и вы можете назвать его "PK". (Например, атрибут id в переменной отношения, который может иметь более одной строки.)

может ли многозначный атрибут зависеть от первичного ключа?

  1. Каждый атрибут зависит от каждого CK по определению CK. Таким образом, каждый атрибут зависит от каждого PK по определению PK (но вы должны уточнить, что вы подразумеваете под "многозначным атрибутом" и "зависимым".)
Другие вопросы по тегам