質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

2回答

222閲覧

RDBの正規形について

tak

総合スコア16

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

0クリップ

投稿2018/11/13 15:41

RDBについてなのですがいまいちスッキリしないので質問させていただきます。

RDBの管理のためにキーなるものを設定して、それがキーたるためにキー制約を課しています。
キーには、超キー、候補キー、主キーがあり
候補キー、超キーについては次のように認識しています。
超キーはタプルを一意に特定できる属性の集合
超キーはいくつかあるときがあり、その中にはタプルを一意に決める事に関して冗長な属性が存在することもある。
その属性を除いた、極小な超キーが候補キー。

ここで、正規形に話が移るのですが
第2正規形において、
{X,A|X⊆RS,A∈RS,A∈/X,}
について、
X→Aの関数従属性が成立するための条件は
(1)XはRSのいかなる候補キーの真部分集合ではない
(2)Aは素属性である
であり、第3正規形については
(1)XはRSの超キーである
(2)Aは素属性である
となっています。

第3正規形における(1)と第2正規形における(1)は
後者の方が条件が緩いとなっているのですが
第2正規形の方に候補キーが、
第3正規形の方に超キーが出てきており
第2正規形の方が条件が厳しいのではないだろうかなどと考えてしまうのですが、
これについてはどのように考えるべきなのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sazi

2018/11/14 00:30

質問の元になっている文献を提示して下さい
tak

2018/11/14 00:36

データベースシステム 北川博之 著 です
guest

回答2

0

言葉だけに囚われて、正規化の本質を見失ってはいけません。

端的に言うと、第2正規形は親子関係にあるテーブルへの分割で、第3正規形はマスター等の外部キーとして参照するものへのテーブル分割です。

第3正規形の方に超キーが出てきており

第3正規で分割される外部キーの話で、それを含んでいるキーの事なので当然スーパーキーです。

投稿2018/11/14 02:09

sazi

総合スコア25206

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tak

2018/11/14 14:26

回答ありがとうございます。 なるほど、正規化がどういうものか そこから入った方がよかったですね
guest

0

第2正規形の方に候補キーが、

第3正規形の方に超キーが出てきており
第2正規形の方が条件が厳しいのではないだろうかなどと考えてしまうのですが

単語だけで判断しないでください。第2正規型の条件は「XはRSのいかなる候補キーの真部分集合ではない」ですから、対偶を取ると「XはRSの候補キーのうち少なくとも1つのすべてを含む」となります。

投稿2018/11/13 22:34

maisumakun

総合スコア145201

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tak

2018/11/14 01:16

回答ありがとうございます。 第2正規形になるときはRSの候補キーの少なくとも1つそのすべてを含んでいるときで 第3正規形になるときは、この条件かつ非素属性を含んだ超キーを考えられるとき でいいでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問