1

イントロの私の教授によると。データベース理論にとって、この機会がいつ発生するかを示す例は存在しません。これは、理論の特定の部分を考えると少し奇妙に思えます。

私が探しているのは、第4正規形であり、第5正規形の分解を実行できるような関係の例です。または(おそらくより可能性が高いです)これに対する洞察(私の先生は何も持っていませんでした)は、実際に作成することが不可能である場合、ほとんど逆説的です...

4

1 に答える 1

6

「データベースシステムの紹介」より:

指定されたサプライヤが指定された部品を指定されたプロジェクトに供給するという意味を持つ表 {supplier, part, project} を考えてみましょう。

すべてのサプライヤ sx、すべてのパーツ py、およびすべてのプロジェクト jz に対して、次のような制約がある場合:

  • サプライヤー sx が部品 py を供給する場合、および
  • サプライヤー sx がプロジェクト jz に供給し、AND
  • 部分 py はプロジェクト jz で使用され、

その場合、サプライヤー sx がパーツ py をプロジェクト jz に供給することに従う必要があります。

このような制約が有効であると仮定すると、3 つの列を持つ単一テーブルの設計は 4NF ですが、5NF ではありません。

3 列の設計の更新の異常は次のとおりです。

テーブルに (s1,p1,j2) と (s1,p2,j1) の 2 つの行があるとします。(s1,p1,j1) を挿入せずに行 (s2,p1,j1) を挿入すると、制約に違反します。

テーブルに (s1,p1,j2)、(s1,p2,j1)、(s2,p1,j1)、(s1,p1,j1) の 4 つの行があるとします。行 (s1,p1,j1) を削除し、他の 3 つのうちの 1 つも削除しない場合、もう一度制約に違反します。

于 2010-11-09T14:49:33.493 に答える