MVD, как и FD, является правилом .Это относится к вашему бизнес-случаю или нет, вам нужно проверить требования и / или спецификации, чтобы узнать.
Вы не можете знать, применимо ли это, просматривая образцы данных (которые относятся к FD какхорошо).
Глядя на примеры данных, можно сказать только то, что «если правило применяется, то эти данные будут действительными / недействительными», или «если эти данные должны быть действительными, то определенное правило MVD определенно выиграет't apply'.
Теперь, что означает такое правило MVD точно ?
Сначала взглянем на то, что FD сообщает точно .FD утверждает, что для определенного [набора] атрибута [s] (левая сторона FD) не может быть случая, чтобы какая-то конкретная [комбинация] значения [s] ассоциировалась с более чем одной [комбинацией]Отличное значение [s] атрибутов на правой стороне FD.
A-> B действительно означает, что для всех пар значений атрибута (a1, b1) и (a2, b2) оно содержитa1 = a2 ===> b1 = b2.
MVD является обобщением FD в том смысле, что в нем не говорится, что отдельные значения B должны быть связаны с / определены с помощью Aзначения, но вместо этого говорится, что SETS из значений B должны быть связаны / определены значениями A.
(предупреждение: здесь переключение с A / B на B / C!)
В вашем примере, b2 «связан» с набором {c1}, а значение b1 «связано» с набором {c2, c3}.Теперь, если MVD B - >> C действительно применяется, тогда строка a4, b1, c2 должна появиться в вашей таблице только в том случае, если строка a4, b1, c3 также появится одновременно.Аналогично, если у вас есть эти две дополнительные строки, и вы добавляете a1, b1, c4, это «добавит» c4 к набору значений, «мультиопределенных» значением b1, и, следовательно, ваш MVD будет нарушен, если вы нетакже добавьте a4, b1, c4.