用語:【1-3】関係モデルの理論
- 関係モデル
- 実体と関連を集合と関係(リレーション)の概念に基づき、フラットな表(テーブル)を用いて表現
- 関係データベース
- 関係
- 主キー
- 候補キーのうちのどれか一つを主たるものにするとき、これを主キーという。表内に一つでナル値は認められない
- 候補キー
- 関係の中でn個組(行)を一意に識別し、冗長性のない1個又は1個以上の属性
- 外部キー
- 表(関係)間に従属関係(参照制約)があるとき、参照する側の項目(列) 参照される側の項目は主キーもしくは候補キー
- 属性
- 実体が持つ性質。属性は値を持ちこれを属性値という
- 定義域
- 実体が持つ属性の値の集合 属性値集合または定義域という 異なる属性は1つの定義域を共有できる
- データ構造
- 関係モデルの要素 定義域、関係(表)、属性、組、候補キー、主キーからなる 行や列の順番には意味がない 集合の一般的性質を引き継いでいるので同じ組(行)が複数個存在することはない
- データ一貫性
- integrity 実体一貫性(一意性制約、非ナル制約、検査制約)と参照一貫性(参照制約)の2つの意味制約則からなる
- データ操作
- 選択、射影、結合などの代数的な演算子からなり、演算子は関係を別の関係に変換する
- 関係代数
- (通常の集合演算) 和、積、差、直積
- 集合論演算
- 和
- union R∪S={t|t∈R∨t∈S}
- 積
- intersection R∩S={t|t∈R∧t∈S} 共通ともいう 差演算を2回使用して表現できる
- 差
- defference R-S={t|t∈R∧¬t∈S}
- 直積
- cartesian product R×S={(u、v)|u∈R∧v∈S} それぞれの項目数をr、sとすると直積の結果の項目数はr+sとなる
- 射影
- projection R[ti1,・・・,tin]={u[ti1,・・・,tin]|u∈R} 関係を構成する属性(列)の内、必要なものだけを残し新しい関係をつくる 重複したn個組は削除する
- 結合
- join Rの列とSの列に対するθ結合は、R[{ti1,・・・,tin}θ{si1,・・・,sin}]S={(u,v)|u∈R∧v∈S∧(u[ti1,・・・,tin]θv[si1,・・・,sin])} RとSの結合演算は、直積R×SとR×Sに対する選択の2つの演算の組み合わせであらわすことができる
- 選択
- selection R[{ti1,・・・,tin}θ{tj1,・・・,tjn}]={u|u∈R∧u([ti1,・・・,tin]θu[tj1,・・・,tjn])}
- 制限
- restriction 選択のこと
- 商
- division R÷S=R[{t1,・・・,tr}÷{s1,・・・,ss}]S={t[t1,・・・,tr-s]|t∈R∧{y|(t[t1,・・・,tr-s],y)∈R}⊇s[s1,・・・,ss]} 商は、直積、差、射影の組み合わせで表すことができる
- 関係計算
- アルファ式
- SQL
- OUTER-JOIN
- 抽象データ型
- データ正規化
- 1fact in1place
- 非正規形
- 第1正規形
- 第2正規形
- 第3正規形
- ボイスコッド正規形
- 第4正規形
- 第5正規形
- 関数従属性
- 完全関数従属性
- 部分関数従属性
- 推移関数従属性
- 多値従属性
- 結合従属性