2009年7月20日月曜日

【DBiD】1 概要

自分なりのポイントを自分なりの言葉で書く。


* 1 概要
- データベースの基礎の大部分はリレーショナルモデ
ルというものに属している。
- SQLはリレーショナルモデルではない。
- この本ではリレーショナルモデルを正しい用語
で正しく取り扱う。
- リレーショナルモデルの定義は徐々に変わりうるも
のである。(数学が進化するのと同じ意味で)
- この章ではE.F.Coddが提示したオリジナルモデルを紹介
する。後の章ではそれを発展させることもある。
- オリジナルモデルは、構造、整合性、操作の3つの基
本要素によって構成される。
- 構造の語彙
- 型 (ドメインとも)
- 関係
- 属性
- タプル
- キー
- 候補キー
- 主キー
- 外部キー
- 参照
- 整合性の語彙
- 整合性制約 (制約とも)
- 個々のDBに特有の制約
- 汎用的な制約
- 実体整合性
- null (Dateはnullの存在に批判的)
- 参照整合性
- 操作の語彙
リレーショナルモデルの操作は、リレーショナル代
数とリレーショナル代入から成る。
- リレーショナル代数
- 閉包性
- ネストしたリレーショナル式
- 最初に定義された8つの演算子
- 制限
- 射影
- 積
- 交わり
- 和
- 差
- 結合
- 商
- リレーショナル代入
- リレーショナル計算
- リレーショナル代数の代替物。
- 本書ではメインには扱わない。
- 本書の各所説明にてベースとなる例
- サプライヤと部品のデータベース
- 関係S
- 契約を結んでいるサプライヤを表す。
- 属性
- サプライヤ番号 (SNO)
- 名前 (SNAME)
- 評価または状態値 (STATUS)
- 所在地 (CITY)
- キー
- サプライヤ番号は主キーである。
- 関係P
- 部品の種類を表す。
- 属性
- 部品番号 (PNO)
- 部品名 (PNAME)
- 色 (COLOR)
- 重量 (WEIGHT)
- その部品の補完場所 (CITY)
- キー
- 部品番号は主キーである。
- 関係SP
- 出荷(出荷された部品とその部品を出荷したサ
プライヤ)を表す。
- 属性
- サプライヤ番号 (SNO)
- 部品番号 (PNO)
- 数量 (QTY)
- キー
- {SNO,PNO}は主キーである。
- この例では特定のサプライヤが特定の部
品を出荷できるのは1度まで、としている。
- データモデルの2つの意味
- 2つの意味の定義
1. リレーショナルモデルのこと。すなわち、リレー
ショナルモデルの3要素(構造、制約、操作)を抽
象機械を使って定義したもの。
2. 特定企業等の永続データのモデル。
- 本書では1の意味でデータモデルを用いる。
- 1の意味のモデルは、実装との分離を目的としたも
のである。これをデータ独立性と言う。
- 関係の語彙のチューンナップ
- 関係は見出しと本体とから構成される。
- 見出し
- = 属性の集合
- 次数/項数 (degree/arity)
- = 見出しに含まれる属性の数
- 本体
- = タプルの集合
- 濃度 (cardinality)
- = 本体に含まれるタプルの数
- 関係は常に第一正規形(1NF)である。
- 属性とタプルを指定する組は常にユニークであ
るということ。まあ、属性とタプルが集合なら
自然とそうであろう。
- リレーショナル代数の入出力がらみ
- リレーショナル代数によって関係から関係を作る
とき、素材になった関係を基底関係、作られた関
係を派生関係と呼ぶ。
- 派生関係にも名前をつけることができる。そのと
きそれをビューと呼んだり仮想関係と呼んだりす
ることもある。
- 関係と関係変数
- 関係はファーストクラスであり、名前をつけるこ
とができる。
- 語彙
- 関係変数 (テーブル変数とも)
- ソース式 (Tutorial Dの代入文の右辺のこと)
- ターゲット変数 (Tutorial Dの代入文の左辺のこと)
- 関係値
- relvar (関係変数の表記)

C.J.Date、ちょっとアジりすぎかも?
でも内容はおもしろそう。

こつこつ

0 件のコメント: