3 層スキーマ=概念スキーマ+外部スキーマ+内部スキーマ
データベース:情報を集約して管理するシステムや場所のこと
データモデル:情報を抽象化して表現した情報
データの独立性:データが変更されてもプログラムに変更が生じないこと、 3 層スキーマにより実現
ANSI:American National Standatrds Institute(米国規格協会)
DBMS | 概念スキーマ | データベース全体の定義 | 概念データモデル |
外部スキーマ | ユーザ側からのデータベース | 論理データモデル、ビュー | |
内部スキーマ | 物理面(ハードウェア)からみたデータベース | 物理データモデル |
DBMS:データベース管理システム (DataBase Management System)
定義 | スキーマを定義 |
操作 | データベースの構築、操作を行う |
制御 | アクセス制御、排他制御、障害回復機能 |
トランザクション管理 | トランザクションの実行を制御 |
ビュー | 表の一部を抽出してユーザに分りやすく示す機能 |
トランザクション: インターネットバンキングなどの操作に使われ、 複数位置にある情報を更新するときに、 対象となる全ての更新処理が終了した段階で処理を確定させること
データモデル
階層データモデル | 階層データベース | ツリー(木)構造 |
ネットワークモデル | ネットワークデータベース | 網の目構造 |
関係モデル | 関係データベース (RDB) | 2 次元表で表示 |
E-R 図:データモデルに独立な、データモデルの表現方法
キー
関係データベース: データベースを 2 次元表形式にまとたもので、 行(レコード、組)と列(フィールド、属性)の表を作る
主キー: 特定の行を取り出すための属性のこと
候補キー: 関係表の中で、ある属性を持った行を全て取り出すもののこと、 ある行を一意に取り出すものは主キー
外部キー: 二つの表から参照関係を取り出すときに使う主キーや候補キーのこと
DBMS の特徴
データの独立 | データベースの属性を追加・ 変更してもその列を参照しないプログラムに影響はないように設計 |
冗長性の排除 | 同一の内容を持つデータの重複を避けるように設計 |
同時処理 | 排他制御を用い、 複数のプログラムから同時にアクセスが可能となるように設計 |
排他制御: 更新中のデータを他のユーザに更新されないようにする制御、ロックともいい、 参照はできるが、更新ができない場合と、参照すらできない場合を指す
共有ロック | 追加・変更・削除不可能・参照可能 |
占有ロック | 追加・変更・削除・参照不可能 |
トラブル対策:データベースは企業の資産であるので、 データベース管理システムにはログファイルやチェックポイントファイルなど、 停電やハードウェア障害などのトラブルが生じても、 データベースに損害を与えないようにする保護機能がある
集合演算:関係表の和・積・差・直積を求めること
和演算 | 2 つの関係表から、 どちらか一方あるいはどちらにも含まれるデータを取り出す |
積演算 | 2 つの関係表から、両方に含まれるデータを取り出す |
差演算 | 2 つの関係表から、どちらか一方にしか含まれないデータを取り出す |
関係演算:一つあるいは複数の関係表のデータを取り出して、 新たに表を作ること
射影 | 表から特定の属性を取り出す |
選択 | 表から特定の条件を満たす行を取り出す |
結合 | 複数の表から条件を満たす行を取り出して新しい表を作る |
初級シスアドの平成 17 年度以降の出題のうち、 「データベース」 に関する問題を含め、5 問または午後問題 1 問を解く。 本日の講義分で解ける問題でもよいし、 自分で勉強した問題でもよい。前回解いたものは除く。 問題は教科書を購入したり、インターネットから検索して探すことができる。