リレーショナル データベース (1) --- リレーショナル データ モデルと関係


序文

この記事では、リレーショナル データ モデルとリレーショナル知識を含む、リレーショナル データベースの関連知識を主に説明します。


1. データモデル

1. データモデルとは

データ モデルは、次の概念を統合したものです。組織内のデータ、データ間の関係、データの制約を説明および操作します。

データ モデルはデータベース システムの中核であり基盤ですさまざまなマシンに実装されている DBMS ソフトウェアは、特定のデータ モデルに基づいています。

2. データモデルの基本要素

データ構造はシステムの静的特性の記述であり、データ操作はシステムの動的特性の記述です。

(1) データ構造

データ構造は次のとおりです。
1. データの種類、内容、性質に関​​連するオブジェクト (ネットワーク モデルのデータ項目とレコード、リレーショナル モデルのドメイン、属性、関係など)

2. ネットワークモデルにおけるセットタイプなど、データ間の関係に関わるオブジェクト

(2) データ操作

データ操作というのは、データベース内のさまざまなオブジェクトのインスタンスに対して実行が許可されている操作のコレクション (操作および関連する操作ルールを含む) を指します。

データベースには、主に検索と更新の2 種類の操作があります。

(3) データ制約

データに対する制約は次のとおりです。整合性ルールのコレクション

データ モデルは、データ モデルが準拠する必要がある基本的な一般的な整合性制約を反映し、指定する必要がありますさらに、データ モデルは、特定のアプリケーションに関与するデータが従う必要がある特定の意味論的制約を反映する整合性制約を定義するメカニズムも提供する必要があります。

2. リレーショナルデータモデル

1. リレーショナル データ モデルの基本概念

(1) 関係インスタンス

リレーショナル インスタンスは、名前付きの列と行からなるテーブルです。

次の点を強調することが重要です。
一般に、関係とはインスタンスを指します。

(2) 関係モデル

リレーショナル スキーマは関係を記述したものです。関係スキーマは通常、
R ( U ) または R ( A 1 , A 2 , … , A n ) R (U) または R (A1, A2, …, An) と省略できます。R ( U )またはR ( A 1 A 2 アン_

リレーショナル スキーマは次のように形式化できます。
R( U , D , dom , F ) R(U, D, dom, F)R U D ドムF _ _

R     关系名
U     组成该关系的属性名集合
D     属性组U中属性所来自的域
dom   属性向域的映象集合,常常直接说明为属性的类型、长度
F     属性间的数据依赖关系集合

(3) リレーショナルデータベース

特定のアプリケーション分野では、すべてのエンティティとエンティティ間の関係の集合がリレーショナル データベースを構成します。

関係は 2 つの部分で構成されるため、リレーショナル データベースも 2 つの部分、つまりリレーショナル スキーマのコレクションと、対応するリレーショナル インスタンスのコレクションで構成されます

リレーショナル スキーマのコレクションはデータベース スキーマと呼ばれ、対応するリレーショナル インスタンスのコレクションはデータベース インスタンスと呼ばれます。

2. リレーショナルデータモデルのデータ構造

(1)タプル

テーブル内の行はエンティティを表し、関係はタプルで構成されます。

(2) 属性

テーブルの各列はリレーションシップの属性と呼ばれ、各属性には属性名があり、属性値は各タプル属性の値です。

(3) ドメイン

属性の値の範囲はドメインと呼ばれます。同じ属性は同じドメイン内の値のみを取ることができます。

(4) 重量

タプル内の属性値

例 1:

ここに画像の説明を挿入

(5) キー

関係におけるエネルギー異なるタプルを一意に区別する属性または属性の組み合わせ、関係のキーと呼ばれたり、キーワードまたはコードと呼ばれたりします。キーワードの属性値は「空値」をとることはできません。

(6) 候補キー

キーとなり得るリレーション内の属性または属性の組み合わせは、一意ではない場合があります。関係内の異なるタプルを一意に区別して決定できる属性または属性の組み合わせは、候補キーと呼ばれます。

で:

候補キーに含まれる属性は主属性と呼ばれ、候補キーに含まれない属性は非主属性と呼ばれます。

(7) 主キー

リレーションシップに複数の候補キーがある場合、そのうちの 1 つをリレーションシップの主キーとして選択します。

主キーはリレーションシップ内で一意です。各リレーションには主キーが 1 つだけあります。

(8) 外部キー

関係内の属性または属性の組み合わせがマージされるはこのリレーションのキーではありませんが、別のリレーションの主キーですこの属性または属性の組み合わせは、この

例 2

ここに画像の説明を挿入

3. リレーショナルデータモデルのデータ操作

リレーショナル モデルで一般的に使用されるリレーショナル演算には 2 種類があります。

1.检索(查询)
2.更新(插入、删除和修改)

ユーザーはリレーショナル言語を通じてデータに対するさまざまな操作を実行できます。リレーショナル言語またはコマンドライン命令を話すことにより、ライブラリ関数として理解できます。

4. リレーショナルデータモデルのデータ制約

3 つのカテゴリに分類されます。

1.数据模型中固有的约束
2.可以在数据模型的模式中直接表述的约束 
3.不能在数据模型的模式中直接表述的约束 

5. リレーショナルデータモデルの長所と短所

(1) メリット

1. リレーショナル モデルは、厳密な数学的概念に基づいているという点で、非リレーショナル モデルとは異なります。

2. データ構造がシンプルかつ明確です。

3. データの独立性が高く、セキュリティと機密性が向上します。

4. 豊かな誠実さ。

(2) デメリット

1. 「現実世界」の実体を表現する能力が弱い。

2.アクセス パスはユーザーにとって透過的であるため(つまり、ユーザーはアクセス パスを直接取得できない)、クエリ効率は非リレーショナル データ モデルほど良くないことがよくあります。

3. リレーショナル モデルには、いくつかの固定された操作セットしかありません。

4. ビジネスルールを十分にサポートできない。

3. 関係性

1. ドメイン、デカルト積、および関係

(1)ドメイン

ドメインは次のセットです同じデータ型の値コレクション。

例えば:

1. 自然数、整数、实数
2. 长度小于25字节的字符串
3. 指定长度的字符串的集合
4. {‘男’,‘女’}

(2) デカルト積

カーディナリティ

D i ( i = 1 , 2 , … , n ) が mi を底とする有限集合である場合、 D 1 × D 2 × … × D n の底 M は次のようになります。 : D_i (i=1,2,…,n) が有限集合であり、その底が m_i,i=1,2,…,n) の場合、D_1\times D_2\times …\times の底 M は、 D_n は次のとおりです。Dの場合私は( i 1 2 n )は、底がmである有限集合です。私はi 1 2 n ) それからD1×D2××Dの底Mは次のとおりです:
M = ∏ i = 1 nmi M=\prod_{i=1}^{n}m_iM=i = 1メートル私は

デカルト積

ドメインのセット D 1 、D 2 、...、D n が与えられた場合、ドメインの一部は同じであることが許可されます。一連のドメイン D_1、D_2、...、D_n が与えられた場合、それらの一部は同じであることが許可されます。一連のドメインDが与えられると、1D2D、これらのフィールドの一部を同じにすることができます。

すると、D 1 、D 2 、…、D n のデカルト積は D_1、D_2、…、D_n のデカルト積は次のようになります。D1D2Dの笛卡尔积:
D 1 × D 2 × … × D n = { ( d 1 , d 2 , … , dn ) ∣ di ∈ D i , i = 1 , 2 , … , n } D_1\times D_2\回 …\回 D_n =\{(d_1,d_2,…,d_n)|d_i\in D_i,i=1,2,…,n\}D1×D2××D{( d1d2d) d私はD私はi 1 2 n }
ここで、各要素( d 1 , d 2 , … , dn ) (d_1,d_2,…,d_n )( d1d2d)はn-タプルと呼ばれ、タプル内の各値di d_id私はコンポーネントと呼ばれます

デカルト積はすべての領域のすべての値の集合であり、コンポーネントを繰り返すことはできません

デカルト積は 2 次元のテーブルとして表すことができ、テーブルの各行はタプルに対応し、テーブルの各列はフィールドに対応します。

たとえば、3 つのドメインが指定されています。
D 1 = 家庭教師セット SUPERVISOR = {Zhang Qingmei、Liu Yi} D 2 = 専門家セット SPECIALTY = {コンピューター専攻、情報専攻} D 3 = 大学院生セット POSTGRADUATE = {Li Yong、Liu Chen 、ワン・ミン} D_1=スーパーバイザーセット SUPERVISOR=\{Zhang Qingmei, Liu Yi\}\\ D_2=専門職セット SPECIALITY=\{コンピュータ専攻、情報専攻\}\\ D_3=大学院生セット POSTGRADUATE=\{Li Yong, Liuチェン、ワン センシティブ\}D1=メンターコレクションスーパーバイザー_ _ _={ 張清梅、劉儀}D2=プロフェッショナルコレクションSPEC I A L I T Y= コンピュータ専攻、情報専攻D3=卒業生コレクションPOSTGR ADUATE _ _ _={ リー・ヨン、リウ・チェン、ワン・ミン}
D 1 、D 2 、D 3 D_1,D_2,D_3D1D2D3デカルト積は:
D = D 1 × D 2 × D 3 = { (Zhang Qingmei、コンピューター専攻、Li Yong) 、 (Zhang Qingmei、コンピューター専攻、Liu Chen) 、 (Zhang Qingmei、コンピューター専攻、Wang Min) 、( Zhang Qingmei、情報専攻、Li Yong)、(Zhang Qingmei、情報専攻、Liu Chen)、(Zhang Qingmei、情報専攻、Wang Min)、(Liu Yi、コンピュータ専攻、Li Yong)、(Liu Yi、コンピュータ専攻) 、リウ・チェン)、(リウ・イー、コンピュータ専攻、ワン・ミン)、( (リウ・イー、情報専攻、リー・ヨン)、( (リウ・イー、情報専攻、リュー・チェン)、( (リウ・イー、情報専攻、ワン・ミン) ) } D=D_1\times D_2\times D_3=\\ \{ (Zhang Qingmei、コンピューター専攻、Li Yong),\\(Zhang Qingmei、コンピューター専攻、Liu Chen),\\ (Zhang Qingmei、専攻コンピュータ、Wang Min)、\\(Zhang Qingmei、情報専攻、Li Yong )、\\ (Zhang Qingmei、情報専攻、Liu Chen)、\\(Zhang Qingmei、情報専攻、Wang Min)、\\ (Liu)イー、コンピューター専攻、リー・ヨン)、\\(リュー・イー、コンピューター専攻、リウ・チェン)、\\ (リュー・イー、コンピューター専攻、ワン・ミン)、\\((リウ・イー、情報専攻、リー・ヨン)、\ \( (リウ・イー、情報専攻、リウ・チェン),\\((リウ・イー、情報専攻、ワン・ミン) \}D=D1×D2×D3{(張清梅、コンピュータ専攻、李勇) ( Zhang Qingmei、コンピュータ サイエンス専攻、Liu Chen ) ( Zhang Qingmei、コンピューター サイエンス専攻、Wang Min ) (張清梅、情報専攻、李勇) (情報専攻、張清梅、劉晨) (情報専攻、張清梅、王敏) ( Liu Yi、コンピューターサイエンス専攻、Li Yong ) ( Liu Yi、コンピューターサイエンス専攻、Liu Chen ) ( Liu Yi、コンピューターサイエンス専攻、Wang Min ) (( Liu Yi、情報専攻、Li Yong ) (( Liu Yi、情報専攻、Liu Chen ) (( Liu Yi、情報専攻、Wang Min )}
ベースは
| D 1 | × | D 2 | × | D 3 | = 2 × 2 × 3 = 12 |D_1|\times|D_2|\times|D_3|= 2\times2\times3=12D1×D2×D3=2×2×3 12
次のようにテーブルに変換されます。
ここに画像の説明を挿入

(3) 関係性

D 1 × D 2 × … × D n の部分集合は、領域 D 1 , D 2 , … , D n 上の関係 D_1×D_2×…×D_n と呼ばれます。 D_1×D_2×…×D_n の部分集合は、ドメイン D_1、D_2、…、D_n の関係D1×D2××DのサブセットがドメインDで呼び出されます1D2D上の関係は次のように表されます:
R ( D 1 , D 2 , … , D n ) R (D_1,D_2,…,D_n)R D)1D2D)
R: 関係名
n: 関係の目的または程度 (Degree)
関係内の各要素は関係内のタプルであり、通常は t で表されます。

単位関係と二項関係

n=1 の場合、
その関係は単位関係 (単項関係)、または一方向関係と呼ばれます。

n=2 の場合、
その関係は二項関係 (Binary relationship) と呼ばれます。

関係性の表現

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

2. 関係の性質

通常、関係には次の特性があります。

1.有一个关系名,并且跟关系模式中所有其他关系不重名
2.每一个单元格都包含且仅包含一个原子值(1NF)
3.每个属性都有一个不同的名字
4.同一属性中的各个值都取自相同的域
5.各个元组互不相同,不存在重复元组
6.属性的顺序并不重要
7.理论上讲,元组的顺序并不重要 

3. リレーショナルスキーマとリレーションの違い

関係スキーマ:

是型
对关系的描述
静态的、稳定的

関係:

是值
关系模式在某一时刻的状态或内容
动态的、随时间不断变化的

4. リレーショナルデータベーススキーマ

リレーショナル データベース スキーマ S には、一連のリレーショナル スキーマS = { R 1 , R 2 , … , R m } S=\{ R_1,R_2,...,R_m\} が含まれます。S={ R1R2Rメートル}および整合性制約のセット IC。

次の表は、HIS={Dept,Doctor,Patient,Diagnosis} として示されるリレーショナル データベース スキーマを示しています。
ここに画像の説明を挿入

5. リレーショナルデータベース関連

(1) リレーショナルデータベースの種類と値

リレーショナル データベースの種類: リレーショナル データベース スキーマはリレーショナル データベースの記述です。

リレーショナル データベースの値: 特定の時点でのリレーショナル スキーマに対応する関係のコレクション。通常はリレーショナル データベースと呼ばれます。

(2) リレーショナルデータベースの物理構成

一部のリレーショナル データベース管理システムでは、テーブルがオペレーティング システム ファイルに対応し、物理的なデータ構成がオペレーティング システムに引き渡されて、完全なデータが作成されます。

一部のリレーショナル データベース管理システムは、オペレーティング システムから複数の大きなファイルを適用し、ファイル領域を独自に分割し、テーブルやインデックスなどのストレージ構造を編成してストレージ管理を実行します。

6. 関係の整合性

(1) 空

1.現在知られていない、またはこのタプルで使用できない属性値を表します

2. 空は、不完全または異常なデータを処理する方法です。

3.空は、ゼロ値またはスペースで構成される文字列と等しくありません。

(2) エンティティ完全性ルール

ルールは次のとおりです。

1. 实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。
2. 现实世界中的实体是可区分的,即它们具有某种唯一性标识。
3. 关系模型中以主码作为唯一性标识。
4. 主码中的属性即主属性不能取空值

(3) 関係間の参照

リレーショナル モデルでは、エンティティとエンティティ間のリンクは関係によって記述されるため、関係間に参照が存在する可能性があります。

例:
学生 (学生番号、名前、性別、専攻番号、年齢)
コース (コース番号、コース名、単位)
選択 (学生証コース番号、スコア)

(4) 外部キー

F を、基礎となるリレーション R の属性またはプロパティのセットとするが、リレーション R のキーではないとします。F が基本リレーション S の主キー Ks に対応する場合、F は R の外部キーと言われます。

基本的な関係 R を参照関係(Referencing Relation)と呼びます。
基本的な関係 S は、参照される関係(Referenced Relation) またはターゲットの関係(Target Relation)と呼ばれます。

(5) 参照整合性規則

属性 (または属性グループ) F が基本リレーション S の主キー Ksに対応する基本リレーションR の外部キーである場合(基本リレーション R と S は必ずしも異なるリレーションではありません)、次の各タプルに対してF の R on の値は次のとおりである必要があります。または NULL 値を取る (F の各属性値は NULL 値) 、または S のタプルの主キー値と等しくなります。

(6) ユーザー定義の整合性

ユーザー定義の整合性は、特定のリレーショナル データベースに対する制約であり、特定のアプリケーションに関係するデータが満たさなければならない意味論的な要件を反映しています。

リレーショナル モデルは、この機能をアプリケーションに任せるのではなく、統一的かつ体系的な方法で処理されるように、そのような整合性を定義および検証するためのメカニズムを提供する必要があります。


要約する

記事の不適切な点についてはご容赦ください

おすすめ

転載: blog.csdn.net/weixin_52042488/article/details/126922465