18

機能依存性と正規化を研究するための優れたリソースを見つけようとしています。

誰が私がどこを見ればいいのか知っていますか? FD が 1NF、2NF、または 3NF のいずれにあるかを区別するのが困難ですか?

私はウィキペディアを読んでいて、Google 検索を使用して優れた研究を見つけましたが、それを簡単な言葉で説明しているものは見つかりません。

FDとノーマライゼーションを人生でどのように学んだか、皆さんも共有できるかもしれません。

4

6 に答える 6

37

機能依存関係は、属性間の機能関係を定義します。例:PersonId機能的に決定BirthDateします (通常は と記述されますPersonId -> BirthDate)。別の言い方をすれば、ある人物の特定のインスタンスには、生年月日が 1 つだけ存在するということです。逆は真である場合とそうでない場合があることに注意してください。多くの人が同じ日に生まれたかもしれません。与えられた日付を共有しているBirthDate多くの人を見つけることができます。PersonId

機能依存関係のセットを使用して、関係 (テーブル) を合成できます。ボイス コッド正規形 (BCNF) を含む最初の 3 つの正規形の定義は、特定の関係のセットが関数の依存関係をどのように表すかという観点から述べられています。4 番目と 5 番目の正規形には、複数値の依存関係 (別のやかん) が含まれます。

機能依存関係、正規化、およびデータベース設計に関する無料のリソースをいくつか紹介します。この資料を学習するときは、頭脳と数学のスキルを鍛える準備をしてください。

以下は、さまざまな学術サイトからの「スライドショー」です...

以下は学術論文です。重い読書ですが、努力する価値は十分にあります。

この主題に真剣に興味がある場合は、お金を出してリレーショナル データベース設計に関する優れた本を購入することをお勧めします。例: CJ Date によるデータベース システムの紹介

于 2010-11-18T17:19:33.477 に答える
8

関数の依存関係は、テーブルの列間の制約です。たとえば、表 person では次のようになります。

社会保障番号 | 名前 | 生年月日 | 住所 | 電話番号
-------------------------------------------------- ----------------------
123-98-1234 | シンディ・クライ | 1983 年 5 月 15 日 | ロサンゼルス | 123-456-7891
121-45-6145 | ジョン・オニール | 1980 年 1 月 30 日 | パリ | パリ | 568-974-2562
658-78-2369 | ジョン・ラノイ | 1980 年 1 月 30 日 | ダラス | ダラス 963-258-7413

ここでは、列 SSN (社会保障番号) の値によって、名前、生年月日、住所、電話番号の列の値が決まります。これは、SSN 列に同じ値を持つ 2 つの行がある場合、名前、生年月日、住所、電話番号の列の値が等しくなることを意味します。SSN 123-98-1234 を持つ人は、常に Cindy Cry と呼ばれ、1983 年 5 月 15 日に生まれます。このような状況を機能依存と呼びます。

関数従属性の概念は、第 2 正規形、第 3 正規形、およびボイス-コッド正規形 (BCNF) を定義するために使用されます。

関数の依存関係と正規化の詳細については、CJ Date による Introduction to Databases のような有名な学術書や、H. Garcia-Molina、J.Ullman、J.Widom trio のいずれかの書籍を参照してください

形式ばらないアプローチが必要な場合は、データの正規化に関する一連の記事を会社のブログで開始しています

于 2014-03-07T11:06:23.857 に答える
4

機能依存性とは何ですか?

機能依存関係は、正規化のプロセスの基本です。機能依存関係は、テーブル内の属性 (列) 間の関係を表します。つまり、依存関係 FD: X → Y は、Y の値が X の値によって決定されることを意味します。X の同じ値を共有する 2 つのタプルは、必然的に Y の値が同じになります。 ここに画像の説明を入力

データベースの正規化とは?

データベースの正規化は、データの冗長性と更新の異常 (更新の異常の詳細については上記を参照) の両方が最小限に抑えられるように、データベース テーブルを分解できる段階的な正式なプロセスです。

ここに画像の説明を入力 礼儀

于 2015-07-27T01:24:39.973 に答える
4

2 つの属性があり、一方の属性がもう一方の属性に完全に依存していると仮定すると、関数の依存関係を理解できます。これを関数の依存関係と呼びます。

実際の例を挙げてみましょう。私たちは、誰もがその人の名前に対して社会保障番号を持っていることを知っています。フランクという人物がいて、この人物の社会保障番号を知りたいとしますが、フランクという名前の人がたくさんいる可能性があるため、データベースはこの情報を助けることができませんが、社会保障番号に対して人の名前を特定できるので、名前その人は、社会保障番号に依存して完全に機能しています。

于 2012-06-21T06:29:58.140 に答える
3

機能依存関係は、通常の形式ではありません。正規形は、与えられた一連の FD を満たす関係のプロパティです。

ウィキペディアや Google に頼らないでください。オンライン ソースからの誤った情報やゴミが多すぎます。試す:

Chris Dateによるデータベースシステムの紹介

ファビアン・パスカルによるデータベース管理の実際の問題

于 2010-11-17T00:23:27.627 に答える