コンピューター, データベース
リレーショナルデータベース。 リレーショナルデータベースの概念
現代の情報でコンピュータ技術の出現は、人間の活動のあらゆる分野に革命をマーク。 すべての情報は、インターネットで不要な廃棄物になっていないではなく、材料は、彼らが見つけ、その後の処理を提出するのは簡単です、その結果、システム化、ソートされているデータベースシステム、によって発明されました。 3主な品種があります - データベースのリレーショナル、階層、ネットワークを割り当てます。
基本モデル
データベースの出現に戻ると、このプロセスは非常に複雑だった、それはプログラム可能な情報処理装置の開発に由来すると言われなければなりません。 モデルの数は現在50以上に達したが、主なものは、まだ実際に広く使用されている、階層、リレーショナルおよびネットワークであると考えられていることは驚くべきことではありません。 彼らは何を表しているのですか?
階層型データベースは、ツリー構造を有しており、通信が存在する間に異なるレベルのデータで構成されています。 ネットワーク・データベース・モデルは、より複雑なパターンです。 その構造は階層構造に似ている、とスキームが展開され、改善されました。 両者の違いは、ネットワークが、いくつかのかもしれないが、遺伝階層データモデルは、一つだけの祖先とリンクすることができるということです。 リレーショナルの構造 データベースは、 はるかに複雑です。 したがって、それは、より詳細に解体されなければなりません。
リレーショナルデータベースの基本的な考え方
このモデルは、博士エドガー・F・コッド科学によって1970年に開発されました。 彼らの整合性を保証ルール - それは最も重要なデータを記述するフィールド、お互いとの関係、それらの上に実行される動作、およびと論理的に構造化テーブルです。 なぜそれは、リレーショナルモデルと呼ばれますか? これは、データ間(ラテン語。Relatioからの)関係に基づいています。 これの多くの定義があります データベースの種類が。 情報を持つリレーショナル表を整理し、治療ではなく、ネットワークまたは階層モデルを与えることがはるかに簡単です。 それをどのように行うのですか? リレーショナルテーブルの機能、モデルの構造や性質を知るには十分です。
モデリングと基本的な要素のプロセス
独自のデータベースを作成するためには、あなたは、セルを記入し、プライマリまたは外部キーを設定するために、リレーショナルテーブルとデータエンティティ間の単一および複数のリンクを設計するために、仕事に必要なものな情報と考えるようにモデリングツールのいずれかを使用する必要があります。
テーブルをモデル化し、リレーショナルデータベースを設計するワークベンチ、phpMyAdminに、ケースメーカー、DBフォージStudioのような無料ツールを介して行われます。 詳細設計後のグラフィック完成リレーショナルモデルを保存し、SQL対応のコードに変換します。 この段階では、データの並べ替え、処理および体系化して作業を開始することができます。
リレーショナルモデルに関連付けられている構造と用語の特長
独自の方法でそれぞれのソースは、その要素について説明したので、私はそれほど混乱のために少しヒントを与えるしたいと思います:
- リレーショナルラベル=性質;
- レイアウト=属性名=ゴルフ=列ヘッダーエンティティ。
- エンティティインスタンス=タプル=レコード=プレート線;
- 属性=値=セルの実体フィールド。
リレーショナルデータベースのプロパティに移動するには、それが含むいくつかの基本的なコンポーネントに注意する必要がありますし、そのために彼らが意図されています。
- エッセンス。 テーブルリレーショナルデータベースは、いずれか、またはデータを介して格納され記述されたオブジェクトを特徴づけるテーブルのセットであってもよいです。 彼らは、フィールドの固定数、およびエントリの可変数を持っています。 表リレーショナルモデルのデータベースは、文字列、属性、およびレイアウトで構成されています。
- 記録 - 上記目的を特徴付けるデータを表示する行の可変数。 エントリの番号は、システムによって自動的に作られました。
- 属性 - データがサマリー列を示します。
- フィールド。 それは実体列です。 彼らの数 - 固定値は、表の作成または変更時に設定されています。
さて、テーブルの構成要素を知って、あなたは、リレーショナルモデルデータベースのプロパティに移動することができます:
- 2次元のリレーショナルデータベースの本質。 ため、彼らと、このプロパティに簡単に様々な論理や数学演算をprodelyvat。
- リレーショナル表の属性値とレコードの順序は任意でよいです。
- リレーショナルテーブル内のカラムには、独自のユニークな名前を持っていなければなりません。
- 列内のすべてのデータは、本質的に固定された長さと同じタイプを有します。
- 本質的に任意のエントリは、一つのデータとして考えられています。
- 行の構成要素は、ユニークです。 リレーショナル性質が全く重複した行はありません。
リレーショナルデータベースの特性に基づいて、その属性の値が同じタイプ、長さでなければならないことが理解されます。 特定の属性値を考えてみましょう。
リレーショナルデータベースの分野の主な特徴
フィールド名は単一のエンティティ内で一意でなければなりません。 リレーショナルデータベースの属性またはフィールドのタイプは、エンティティのフィールドに格納されたデータのカテゴリを記述する。 フィールドリレーショナルデータベースは、文字で計算された固定サイズを、持っている必要があります。 パラメータと属性値をフォーマットするには、そのデータを補正する方法を定義します。 しかし、「マスク」または「入力テンプレート」のようなものがあります。 属性値のデータ入力の構成を決定するために設計されています。 確かに間違ったレコードで、 データの種類 フィールドでバグレポートに発行する必要があります。 データ入力の正確さと精度を確認するための条件 - 、フィールド上の要素は、いくつかの制限があります。 一意のデータで埋められていなければならない必須の属性値があります。 いくつかの属性行は、NULL値を充填することができます。 空のデータフィールドの属性を入力することができました。 バグ報告と同様に、システムによって自動的に満たされている値がある - これはデフォルトのデータです。 インデックスフィールド意図したすべてのデータの検索を高速化するには。
スキーム次元のリレーショナルデータベースのテーブル
| name属性1 | 属性2の名前 | 属性3の名前 | 属性4名 | name属性5 |
| Element_1_1 | Element_1_2 | Element_1_3 | Element_1_4 | Element_1_5 |
| Element_2_1 | Element_2_2 | Element_2_3 | Element_2_4 | Element_2_5 |
| Element_3_1 | Element_3_2 | Element_3_3 | Element_3_4 | Element_3_5 |
詳細な理解のための 管理システムの 一例としてのスキームを検討するSQLのベストを使用してモデル。 我々はすでに、リレーショナル・データベースであるか知っています。 各表のエントリ - 単一のデータ・エレメント。 データの冗長性を防ぐために、必要な操作を正規化します。
リレーショナル自然の正規化の基本的なルール
1.リレーショナルテーブルのフィールド名の値は、種類( - 1NF第1正規形)のいずれかの一意である必要があります。
既に1NFに縮小された表2.、任意の列の名前は一意のテーブル識別子(2NF)に依存することが、非同定。
3.既に2NFに格納されているすべてのテーブルについては、非特定の各フィールドは、他の未確認要素値(3NF実体)とは独立であることができます。
データベース:テーブル間の関係のリンク
2つのメインがある 関係のタイプ 関係錠剤のは:
- 「ワン多くの」。 場合つのキーテーブルエントリ№1第二のエンティティの複数のインスタンスよれが発生します。 描かれた線の一方の端部に鍵のアイコンは、物質が「1」の側にあることを示し、ラインのもう一方の端には、多くの場合、無限マークのシンボルです。
- 通信は、「多対多」の一つの論理エンティティの明示的な相互作用を別のテーブルのレコード数を持ついくつかの列の場合に形成されます。
- 「一対一」の連結がある2つのエンティティは、それがテーブルのキー識別子が他のエンティティに存在することを意味する場合、それが不要で、テーブルのいずれかを除去する必要があります。 しかし、時には唯一のセキュリティ・プログラマのために意図的に2つのエンティティを分離。 したがって、仮に、「一から一」との間の接続が存在することができます。
リレーショナルデータベース内のキーの存在
プライマリおよびセカンダリキーは、潜在的なデータベースの関係を識別します。 リレーショナルデータ通信モデルは唯一の候補キーを持つことができ、それは主キーになります。 それは何ですか? 主キー - 列またはあなたが特定のデータ・ラインへのアクセスを得ることができ、それを通して本質、の属性のセット。 それは、一つだけ一意である必要があり、そしてそのフィールドはNULL値を含めることはできません。 主キーは1つの属性のみで構成されている場合、そうだろう、簡単であると言われています。
主キーのほか、存在し、外部(外部キー)。 多くは、それらの間にどのような違いを理解していません。 私たちは、一例として、より詳細にそれらを調べてみましょう。 「ディーン」と「学生」:だから、2つのテーブルがあります。 「ディーン」の本質は、フィールド含まれています:「ID学生」、「名」と「グループ。」 表「学生」は、「名前」、「グループ」と「平均」などの属性値を持っています。 学生証は、いくつかの学生のために同じにすることはできませんように、主キーであることをフィールドです。 表の「学生」から「名前」と「グループ」は少数の人々のために同じであってもよく、それらは「ディーン」の本質から学生のID番号を参照してくださいので、彼らは、外部キーとして使用することができます。
リレーショナル・データベース・モデルの例
明確にするために、我々は2つのエンティティからなるリレーショナルデータベースモデルの簡単な例を与えます。 名前「ディーン」を持つテーブルがあります。
「ディーン」の本質 | ||
学生ID | フルネーム | グループ |
111 | イワノフオレグ・ペトロヴィッチ | IN-41 |
222 | ラザレフイリヤアレク | IN-72 |
333 | Konoplev ペトル・バサイルビック | IN-41 |
444 | Kushnerevaナタリヤ・Igorevna | IN-72 |
完全なリレーショナルデータベースを取得するには、接続を行う必要があります。 これらのフィールドが主キーを作成することはできませんので、「41-IN」と同様に「IN-72」のエントリが、存在することができるより多くの学生の姓、名、および父称として「ディーン」テーブル内で2回以上が、まれに、同一とすることができます。 「学生」の本質が表示されます。
表「学生」 | |||
フルネーム | グループ | 平均 | 電話 |
イワノフオレグ・ペトロヴィッチ | IN-41 | 3.0 | 2-27-36 |
ラザレフイリヤアレク | IN-72 | 3.8 | 2-36-82 |
Konoplev ペトル・バサイルビック | IN-41 | 3.9 | 2-54-78 |
Kushnerevaナタリヤ・Igorevna | IN-72 | 4.7 | 2-65-25 |
私たちが見ることができるように、リレーショナルデータベースフィールドの種類は完全に異なっています。 デジタル録音や文字として存在。 したがって、属性の設定は、整数、文字、vachar、日付などの値を示すべきです。 「ディーン」ユニークな値では唯一の学生のIDです。 このフィールドは主キーとして撮影することができます。 「学生」の本質から名、アーティスト名、電話は学生のIDを参照する外部キーとして撮影することができます。 接続が確立されています。 これは、「一対一」のコミュニケーションモデルの一例です。 仮に、余分なテーブルの一つは、彼らは簡単に単一のエンティティにまとめることができます。 普遍的に知られてはなりませんでした学生のID番号に、二つのテーブルがあることが十分に可能です。
Similar articles
Trending Now