【データベース】データベースシステム入門(2) - リレーションシップ

リレーショナルデータベース

リレーショナル データベースは、リレーショナル モデルをサポートするデータベース システムです。

リレーショナル モデルのデータ構造: リレーションシップ、論理構造: 平面的な 2 次元テーブル

エリア

同じデータ型の値のコレクションです。

例: {a,b,c}、{0,1,2,3} など。

デカルト積

意味

デカルト積は、フィールド上の集合演算です。

計算式

一連のドメインを指定すると: D1、D2、D3、…、Dn [重複ドメインは許可されます]

デカルト積を計算する式は次のとおりです。

D 1 × D 2 × D 3 × … × D n = { ( d 1 , d 2 , d 3 , … , d n ) ∣ d i ∈ D i , i = 1 , 2 , … , n } D1×D2×D3 ×…×Dn = {\{(d1,d2,d3,…,dn) | di ∈Di, i = 1,2,…,n\}}D1×D2×D3××Dn={(d1,d2d3dn)d Di=12n}

名词解释

  1. (d1, d2, d3,…,dn) は n タプル (タプルと呼ばれます) と呼ばれます。

  2. diはコンポーネントと呼ばれます。

カーディナリティ

ドメインに許可されるさまざまな値の数は、ドメインのカーディナリティと呼ばれます。

有限集合 Di の場合、底は mi であり、デカルト積 D1×D2×D3×…×Dn の底 M は次のようになります。

M = Π n i = 1 m i \Pi{n \atop i=1}m_i 円周率i=1n メートルi

ここに画像の説明を挿入します
例1

関係

意味

D1×D2×…×Dn の有限部分集合は、領域 D1, D2,…,Dn 上の関係と呼ばれ、R(D1,D2,D3,…,Dn) で表されます。

R は関係の名前を表し、n は関係の順序または程度を表します。

リレーションシップは 2 次元のテーブルであり、テーブルの各行はタプルに対応し、テーブルの各列はフィールドに対応します。

フィールドが同じである可能性があるため、各列には属性と呼ばれる名前が必要です。

n 次の関係には n 個の属性が必要です

用語集:

  1. リレーション内の各要素はリレーション内のタプルであり、通常は t で表されます。
    • n = 1 の場合、この関係は単位関係になります。
    • n = 2 の場合、この関係は二項関係になります。
  2. 候補コード: 関係内の特定の属性グループの値はタプルを一意に識別できますが、そのサブセットは識別できない場合、その属性グループは候補コードと呼ばれます。
  3. 主コード: 関係には複数の候補コードがあり、そのうちの 1 つを主コードとして選択する必要があります。
  4. メイン属性: 候補コードの属性をメイン属性と呼びます。
  5. 非プライマリ属性: どの候補コードにも含まれていない属性は、非プライマリ属性 (または非コード属性) と呼ばれます。
  6. フルコード: 関係パターンのすべての属性がこの関係パターンの候補コードであり、この候補コードをフルコードと呼びます。

3 つのタイプの関係

  1. 基本リレーションシップ(基本テーブル/実テーブル)

    これは実際のテーブルであり、実際に保存されているデータの論理表示です。

  2. ルックアップテーブル

    クエリ結果に対応するテーブルですか

  3. ビューテーブル

    基本表やその他のビュー表から派生した表であり、仮想的な表であり、実際の格納データとは異なります。

基本的な関係の性質

  1. 列は同種です (各列のコンポーネントは同じタイプのデータであり、同じドメインに由来します)
  2. 同じドメインから異なる列を取得することができ、各列は属性と呼ばれます。異なる属性には異なる属性名を付ける必要があります。
    1. たとえば例 1 は、person{张清玫、刘逸、李勇、刘晨、王敏} に分割されます。 specialty{计算机专业、信息专业}。 person ドメインは 2 つの属性 研究生和导师
  3. 列の順序は重要ではありません。つまり、列の順序は自由に入れ替えることができます。
  4. 行の順序は重要ではありません。つまり、行の順序は自由に入れ替えることができます。
  5. 2 つのタプルの候補コードが同じ値を持つことはできません。
  6. ⭐コンポーネントはアトミック値を取る必要があります。つまり、各コンポーネントは分割できないデータ項目です。

この標準化された関係はパラダイムと呼ばれます。

関係モデル

関係の記述は関係スキーマと呼ばれます。

R ( U 、 D 、 DOM 、 F ) R(U、D、DOM、F)R(U,DDOMF)

  • R: 関係名
  • U: 関係を構成する属性名のセット
  • D: U のすべての属性が由来するドメイン
  • DOM: 属性に似たドメインの画像のコレクション
  • F: 属性間のデータ依存関係のコレクション

は通常、 R ( U ) R(U) と省略することもできます。R(U)

関係演算

基本的なリレーショナル演算

クエリと挿入、変更と削除が含まれます。

クエリ操作

  1. セレクトセレクト
  2. PROJECT 投影
  3. JOIN接続
  4. 除算以外
  5. ユニオンと
  6. EXCEPT 差
  7. 交差点
  8. デカルト積

関係言語

ここに画像の説明を挿入します

SQL 言語は、高度に非手続き型の言語です。つまり、特定のインジケーターをクエリする場合、リレーショナル データベースはクエリ効率を向上させるために最適なクエリ パスを選択します。

誠実さ

エンティティの完全性

ルール:

属性 (1 つまたはグループ) A が基本リレーション R の主属性である場合、A は null 値を取ることができません。

参照整合性

外部コードの概念

F が基本リレーション R の属性または属性セットであるが、リレーション R のキーではなく、Ks が基本リレーション S の主キーであるとします。 F が Ks に対応する場合、F は R の外部コードであると言われます。基本関係Rは参照関係とも呼ばれ、Sは被参照関係(対象関係)である。

ここに画像の説明を挿入します

ルール

属性 F が基本リレーションシップ R の外部キーであり、基本リレーションシップ S の主キー Ks に対応する場合 (基本リレーションシップ R と S は必ずしも異なるリレーションシップではありません)、R の各タプルについて、次の値が得られます。 F:

  1. Null 値 (F の各属性値は null)
  2. S のタプルの主キー値

ユーザー定義の整合性

特定のアプリケーションに関係するデータはセマンティック要件を満たしている必要があります

関係代数

オペレーター 意味
集合演算子
交差点
連合
- 差分セット
× デカルト積
関係演算子
p 選ぶ
円周率 投影
接続する
÷ 取り除く

集合演算子

例として集合 R と集合 S を考えてみましょう。

そして∪

R ∪ S = { t ∣ t ∈ R ∪ t ∈ S } R∪S=\{t|t∈R∪t∈S\}RS={ ttRtS}

違い -

R − S = { t ∣ t ∈ R ∩ t ∉ S } R - S = \{t|t∈R∩t∉S\}RS={ ttRt/S}

クロス∩

R ∩ S = { t ∣ t ∈ R ∩ t ∈ S } R∩S=\{t|t∈R∩t∈S\}RS={ ttRtS}

デカルト積

R × S = { t r t s ∣ t r ∈ R ∩ t s ∈ S } R×S = \{t_rt_s|t_r∈R∩t_s∈S\}R×S={ tr ts tr Rts S}

従来の集合演算の図

ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/qq_41675812/article/details/132859075