Четвертая нормальная форма - PullRequest
1 голос
/ 26 мая 2011

Четвертая нормальная форма описывает отношение, которое находится в BCNF, но которое также не содержит нетривиальных многозначных зависимостей.

Я пытаюсь понять, что такое тривиальная многозначная зависимость и нетривиальная многозначная зависимость, иразличия.Как мне определить последнее для выполнения 4NF?

РЕДАКТИРОВАТЬ:

Мне в основном нужно знать, в чем разница между тривиальной и нетривиальной зависимостью?

Ответы [ 2 ]

5 голосов
/ 26 мая 2011

В википедии есть довольно хороший пример: Четвертая нормальная форма .Есть ли какая-то конкретная часть, которую вы не понимаете?

Возможно, вы захотите взглянуть на Многозначная зависимость .

ОБНОВЛЕНИЕ: Так в чем же разница между тривиальными и нетривиальными зависимостями?

Это зависит от того, идет ли речь о функциональных или многозначных зависимостях.

Тривиальная функциональная зависимость X -> Y - это та, где Y является подмножеством X.Поскольку X -> Y означает «Y можно определить из X», это тривиально верно для любых X и Y, где Y состоит из атрибутов X;очевидно, если мы знаем X, мы можем определить Y, если он содержит только элементы из X!

Тривиальная многозначная зависимость X ->-> Y - это та, где Y содержит каждый атрибут, не входящий вX.Обратите внимание, что он также может содержать атрибуты в X.Этот тип многозначной зависимости также справедлив для всех X и Y и поэтому тривиален.Это следует из определения многозначной зависимости:

обозначает (x, y, z) кортеж, имеющий значения для X, Y, R − X − Y, все вместе равные x, y, z, соответственно, тогда всякий раз, когда кортежи (a, b, c) и (a, d, e) существуют в r, кортежи (a, b, e) и (a, d, c) также должны существоватьв т.

В тривиальной многозначной зависимости набор z = R - X - Y пуст, поэтому требование уменьшается до (0 - пустой набор):

кортежи (a, b, 0) и (a, d, 0) существуют в r, кортежи (a, b, 0) и (a, d, 0) также должны существовать в r.

Что, очевидно, верно.

1 голос
/ 04 февраля 2013

X-> Y - Trival тогда и только тогда, когда правая сторона является подмножеством левой стороны. X-> Y не является Trival, если Y не содержится в X.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...