第5章 データベースの設計 5.1 5.2 5.3 5.4 データベース設計の概要 ERモデルとスキーマ設計 正規化 一貫性制約 5.1 データベース設計の概要 【データベース設計とは】 対象とする世界を表現するために、 データベースに盛り込む情報を整理し、 データベースの枠組み(スキーマ)を決定する。 関係スキーマ = 関係名 + 属性の集まり 関係データベースのスキーマ = 関係スキーマの集まり 良いデータベースとは・・・ ①理解しやすい構造 ②更新するとき内容に矛盾が生じにくい。 このためには・・・ ①対象世界の忠実な表現 ②簡潔な表現 ③矛盾の原因となるデータ重複の回避 1.データベース設計のアプローチ 2つのアプローチ ① データベース管理システムが扱うモデルを直接用いてモデル化 する。 ② 実世界の記述に適したモデルを用いて設計を行い、その結果を 元にデータモデルを設計する。 関係モデルの場合 ①ERモデル(概念モデル)やオブジェクト指向モデルで設計 ②関係モデル(論理モデル)でのスキーマ設計 オブジェクト指向プログラミング言語を使って開発する場合、 オブジェクト指向モデルで設計する方が有利。 2.ERモデルによる関係DB設計手順の概要 ① ERモデルを用いて実世界の対象を記述 ② 得られた結果を元に関係モデルによるスキーマを作成。 ③ 得られたスキーマをチェックして、正規化を行う。 直接モデル化する場合 ① 実世界の対象を関係モデルによるスキーマとして記述。 ②関係モデル(論理モデル)でのスキーマ設計(上記③と同じ) オブジェクト指向プログラミング言語を使って開発する場合、 オブジェクト指向モデルで実世界の対象を記述。 変換は、ERモデルより複雑であり、 かつ良いスキーマを得るための手順が確立されていない 3.オブジェクト指向モデルによる 関係DB設計手順の概要 ① オブジェクト指向モデルを用いて実世界の対象を記述 ② 得られた結果を元に関係モデルによるスキーマを作成。 ③ 得られたスキーマをチェックして、正規化を行う。 【長所】 ① 自由度が高いので、ERモデルより実世界に対応させやすい。 ② オブジェクト指向データベースでは設計をそのままスキーマ情 報として用いることができる。 【欠点】 ① 自由度が高いので、ERモデルより若干複雑。 ② 変換は、ERモデルより複雑。 ③ 良いスキーマを得るための手順が確立されていない。
© Copyright 2024 ExpyDoc