Частичная Зависимость (Базы Данных)

Мне нужно закончить. Я создал определение, что частичная зависимость-это когда поля косвенно зависят от первичного ключа или частично зависят, но также зависят от других ключей, которые зависят от первичного, так что если поле, которое другое поле зависит от идентификатора, удалено, это поле все равно будет существовать из-за его зависимости от первичного ключа. Я не уверен, что это правильно. Я исследовал, и каждое определение звучит обманчиво.Правильно ли мое определение, а если нет объясните, пожалуйста.

7 ответов


FD (функциональная зависимость), которая выполняется в отношении, является частичной при удалении одного из определяющих атрибутов, дает FD, который выполняется в отношении. FD, который не является частичным, заполнен.

например, если {A,B} → {C}, но также {A} → {C}, то {C} частично функционально зависит от {A, B}.

функциональная зависимость X → Y является полной функциональной зависимостью, если удаление любого атрибута A из X означает, что зависимость не подержите еще немного, то есть любой атрибут a ε X, (X - {A}) не функционально определить Y. функциональная зависимость X → Y является частичной зависимость, если некоторый атрибут a ε X может быть удален из X и зависимость все еще сохраняется; то есть для некоторых a ε X, (X – {A}) → Y.

-- основы систем баз данных шестое издание Ramez Elmasri & Navathe

обратите внимание, что, является ли FD полным или частичным, не зависит от CKs( ключей-кандидатов), не говоря уже об одном CK, который вы можете вызвать PK (первичный ключ.)

(определение 2NF включает полную функциональную зависимость атрибутов не-CK от CKs, но любой FD, который выполняется, является полным или частичным. И PKs не имеет значения для 2NF.)


частичная зависимость означает, что атрибут функционально зависит от нестандартных часть ключа-кандидата. (Нестандартных атрибут-это атрибут, который не является частью любой ключевые кандидата.)

например, начнем с R{ABCD} и функциональных зависимостей AB - >CD и A - >C.

единственный ключ-кандидат для R-AB. C и D являются непривычными атрибутами. C функционально зависит от A. A is часть of a потенциальный ключ. Это частичная зависимость.


частичная зависимость подразумевает ситуацию, когда непрямой атрибут (атрибут, который не является частью детерминантные(первичный ключ-потенциальный ключ)) это функционально зависимая часть/части первичного ключа/кандидата.


Частичная Зависимость является одним из видов функциональных зависимостей, которые возникают, когда первичный ключ должен быть ключом-кандидатом, а не простым атрибутом, зависит от подмножества/части ключа-кандидата (более одного первичного ключа).

попробуйте понять частичную зависимость, связанную с помощью примера:

Продавец (Id, Продукт, Цена)

Потенциальные Ключи : Id, Продукт
не простой атрибут: Цена

атрибут цены зависит только от атрибута продукта который является подмножеством ключа-кандидата,не весь ключ кандидата(Id, Product) ключ . Это называется частичной зависимостью.

Итак, мы можем сказать, что Товар->Цена частичная зависимость.


частичная зависимость решена для прихода к отношению в 2NF, но 2NF является "ступенькой" (C. дата) для решения любой транзитивной зависимости и прихода к отношению в 3NF (который является операционной целью). Однако самое интересное в частичной зависимости заключается в том, что это частный случай собственной транзитивной зависимости. Это было демострировано П. А. Берстейном в 1976 году: если {(x•y)→z, но y→z}, то {(x•y)→y & y→z}. Алгоритм синтезатора 3nf Berstein не нуждается в выполнении distintions среди этих двух типов реляционных дефектов.


Частичная Функциональная Зависимость происходит только в отношении составных ключей. Частичная функциональная зависимость возникает, когда один или несколько неключевых атрибутов зависят от части первичного ключа.

пример:

таблица: Stud_id, Идентификатор_курса, Stud_name, Course_Name

где: Первичный Ключ = Stud_id + Идентификатор_курса

затем: Для определения имени студента мы используем только Stud_id, который является частью primary ключ.

{Stud_id} -> {Stud_Name}

следовательно, Stud_name частично зависит от Stud_id. Это называется частичной зависимостью.


Я надеюсь, что это объяснение дает более интуитивное обращение к зависимости, чем ранее данные ответы.

Функциональная Зависимость

анализ зависимости работает на уровне атрибута, т. е. один или несколько атрибутов определяются другим атрибутом, он предшествует понятию ключей. "Роль ключа основана на концепции детерминации. 'определение-это состояние в котором знание значения одного атрибута позволяет определить значение другой.'Системы баз данных 12ed

функциональная зависимость-это когда один или несколько атрибутов определяют один или несколько атрибутов. Например:

Номер Социального Страхования - > Имя, Фамилия.

однако по определению функциональной зависимости:

(SSN, Имя) - > Фамилия

Это также допустимая функциональная зависимость. The факторы (атрибут, который определяет другая атрибуция) называются супер ключ.

Полная Функциональная Зависимость

таким образом, в качестве подмножества функциональной зависимости существует понятие полная функциональная зависимость, где рассматривается голый минимальный определитель. Мы называем эти голые минимальные детерминанты коллективно как один кандидат (странная лингвистическая причуда, на мой взгляд, как и понятие вектора).

Частичной Функциональной Зависимость

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