DataBase Memo

::目次::

1. データモデル
2. DBMS
3. RDB
4. リレーションの仕組み
5. キー
6. 正規化
7. リレーションシップ
8. 演算
9. SQL 言語
10. ホスト言語と SQL の連携
11. SQL

データモデル

  • 階層データモデル:複数のレコードを木のような形をした階層関係のモデル。
  • ネットワークデータモデル:レコード同士が網状に関係したモデル。
  • リレーショナルデータモデル:2次元の表の概念を利用するモデル。現在の主流

データベース管理システム (DataBase Management System : DBMS)

DBMS が行うこと

  • 問い合わせ処理
  • データの一貫性のチェック
  • 機密保護
  • 同時実行制御:トランザクション、コミット
  • 障害回復処理:ロールバック、ロールフォワード、ミラーリング
  • 物理的なデータ管理

リレーショナルデータベース (Relational DataBase : RDB)

  • 「表」(リレーション) を基本にしたデータベース
  • 関係代数によるデータ操作
  • データベース言語は SQL (Structured Query Language)
  • 代表的な RDBMS (Relational DataBase Management System):Oracle, MS SQL Server, IBM DB2

リレーションの仕組み

  • 2次元の「表」(テーブル) が基本
  • 横の行:組 (タプル)、行 (ロー)
  • 縦の列:属性 (アトリビュート)、列 (カラム)
  • キー:特別の情報を持った列
  • 定義域 (ドメイン):同じ種類の値の集合

キー

  • 候補キー
  • 主キー
  • 代替キー
  • 連結キー

正規化

  • 第1正規形
  • 第2正規形
  • 第3正規形
  • 第4正規形

リレーションシップ

リレーショナルデータベースにおいて表同士がもつ関係のこと.

  • 外部キー:リレーションをもつ2つの列のうち,主キーでないほうの列
  • 参照整合性:外部キーを設定することで,表同士で矛盾のない値を保つこと

演算

リレーショナルデータモデルの演算としては,和・差・積・直積・射影・選択・ 結合・商がある.

  • 和:重複行を除く2つの表にあるすべての行を取り出す演算.
  • 差:2つの表のどちらか一方だけにある行を取り出す演算.
  • 積:2つの表に共通する行を取り出す演算.
  • 直積:2つの表の行・列を全て組み合わせる演算. 取り出した結果の表の行数は2表の行数を掛け合わせた数,列数は 2表の列を足し合わせた数となる.
  • 射影:表中の列を取り出す演算.
  • 選択:表中の行を取り出す演算.
  • 結合:定義域が等しい列を介して2つの表をつなぎ合わせる演算.
  • 商:割るほうの表の行がすべて含まれる行を,もう一方の表から選び出し, 割るほうの表の列を除いたもの.

SQL 言語

3つの役割

  • DML (Data Manipulation Languate):データ操作言語
  • DDL (Data Definition Language):データ定義言語
  • DCL (Data Control Languate):データ制御言語

主な SQL の機能

  • DML (Data Manipulation Languate)
  • SELECT:行の問い合わせ
    INSERT:行の挿入
    UPDATE:行の更新
    DELETE:行の削除
    
  • DDL (Data Definition Language)
  • CREATE:実表・ビュー表などの定義
    ALTER:実表・列などの変更
    DROP:実表・ビュー表・列などの削除
    
  • DCL (Data Control Languate)
  • GRANT:権限の付与
    REVOKE:権限の削除
    COMMIT:コミット
    ROLLBACK:ロールバック
    

ホスト言語と SQL の連携

SQL 言語と連携させるプログラミング言語をホスト言語という.
その方法としては,次の3つ.

  • モジュール呼び出し:SQL 文で記述されたモジュールを他の言語から呼び出して使う方法.
  • 埋め込み SQL:他の言語のコードの中に SQL 文をそのまま埋め込む方法
  • 動的 SQL:アプリケーションを実行する際に SQL 文を生成する方法.

SQL

SQLに関しては以下を参照。

Home

Tips

ページのトップへ戻る