0

こんにちは、解決しようとしているデータベースの正規化の問題について何時間も考えてきました。私の問題では、複合主キーがあり、キーの列の 1 つのデータに複数の値があります。主キーの列の 1 つに複数の値があることが大きな問題です。最初の正規形で、主キー以外の繰り返しグループのみが削除されるか、複数の値を持つ主キー列も削除されるかを知りたいです。それでも、人々が理解するには漠然としているかもしれません。だから私はテーブルのスクリーンショットを投稿しています:

http://tinypic.com/view.php?pic=ev47jr&s=5

(上の画像を開いて表をご覧ください)

ここで質問したいのは、最初の正規形で列番号 4,5,6,7 のみが削除されるか、列番号 2 も削除されるかということです (複数の値も含まれているため)。

2 列目を削除しないと 1NF には入りませんが、これも削除すると 3NF に直接移動します。ヘルプ?

ありがとうございました。

4

1 に答える 1

1

ここで質問したいのは、最初の正規形で列番号 4、5、6、7 のみが削除されるのか、それとも列番号 2 も削除されるのかということです。

複数の値を含むすべての列が変更されます。これには列 2 が含まれます。

2 列目を削除しないと 1NF には入りませんが、これも削除すると 3NF に直接移動します。

正規化は次のようには機能しません。

  • 1NF にあるが、まだ 2NF にない構造を決定します。
  • 2NF にあるが、まだ3NF にない構造を決定します。
  • 3NF にはあるがBCNFはまだない構造を決定します。
  • BCNF にあり、まだ4NFにない構造を決定します。
  • 4NF にあり、まだ 5NF になってない構造を決定します。
  • 5NF にあり、まだ 6NF にない構造を決定します。

関係モデルは、1NF にあるすべての関係 R に対して、2NF にあるが、まだ3NF にはない分解が存在するとは言いません。そうは言っていませんが、これはよくある誤解です。

実際には、部分的なキー依存関係を削除して 2NF に到達し、結果が 5NF になることは珍しくありません。

于 2012-04-21T11:12:48.143 に答える