-2

私はSQLを初めて使用しています。私は現在、SQL Server 2008 R2を使用しています。私はいつも私の仕事に欠陥がある、または私はちょうど編集的であると仮定しているため、テーブルが正規化されているかどうかを確認できます。このデータベーステーブルを正規化するにはどうすればよいですか?

テーブルが正規化されていない場合は、どちらが間違っているのかを教えてください。これまでのところ、3NFで得られた表であり、bcnfに到達できる場合はできるだけ多くのテーブルがあります。私はちょうどそれが正規化された形式であるかどうかを確認する必要があります、本当の答えは必要ありません:D

これは大きなテーブルPurchaseOrderから私は3NFを介して正規化しました、結果:

Image

これは、受信した大きなテーブルの素材からのものであり、私も3NFを通してそれを正規化してきた、私は結果として5つのテーブルを得た:

Image

+1

この機能にどのような機能的依存関係がありましたか? –

+0

あなたの作品を確認したい場合は、あなたがしたことを見せて正当化しなければなりません。私たちがすることができるのは、あなたが与えた答えが可能な答えであるかどうかだけです。あなたの正当性は何ですか?過去10回のデータベース正規化に関する質問のコメントをお読みください。宿題についても含めて[ask]をお読みください。 PSいつでもテーブルをBCNFに入れることができます。関数の依存関係を常に保つことはできません。 – philipxy

答えて

0

テーブルがあるも3次形式でmalizeされます。反復列はなく、すべての列(すべての表内)は主キーと主キーのみに依存します。最後のテストは、指定された日付のすべてのpoのリストを生成し、生成された所得の量を含めるなどの使用可能な結果を​​提供するSQL文を作成できるかどうかを確認することです。

+0

* "すべての列...は主キーに依存し、主キーのみに依存します" *おそらくすべての列はすべての*候補キーに依存していると言います。 –

関連する問題