RDB の基礎概念

作成: 2026.03.24更新: 2026.03.24

RDB の基礎概念とは

RDB(Relational Database / リレーショナルデータベース)は、データを「テーブル(表)」の形式で管理するデータベースである。1970 年に Edgar F. Codd が提唱した関係モデルに基づいており、現在でもエンタープライズシステムのデータ管理において最も広く使われているデータベースの種類である。

RDB では、テーブル同士を「リレーション(関連)」で結びつけることで、複雑なデータ構造を表現できる。操作には SQL(Structured Query Language)を使用する。

なぜ SIer で重要か

SIer が開発する業務システムでは、ほぼ 100% と言ってよいほど RDB が使用されている。銀行の口座情報、自治体の住民情報、ECサイトの商品・注文情報など、業務データの永続的な保存と正確な管理が求められるシステムでは、RDB のデータ整合性保証が不可欠だからである。

SIer の開発者にとって、RDB の基礎概念を理解することは、テーブル設計書の読み書き、SQL の記述、アプリケーションからのデータアクセス実装など、あらゆる工程の前提知識となる。

基本概念

テーブル・行・列

RDB の最も基本的な構造はテーブル(表)である。

users テーブル
┌─────┬──────────┬──────────────────┬───────────┐
│ id  │ name     │ email            │ dept_id   │
├─────┼──────────┼──────────────────┼───────────┤
│ 1   │ 田中太郎 │ tanaka@example   │ 10        │
│ 2   │ 鈴木花子 │ suzuki@example   │ 20        │
│ 3   │ 佐藤次郎 │ sato@example     │ 10        │
└─────┴──────────┴──────────────────┴───────────┘
用語別名説明
テーブル表、リレーションデータの集合。1 つの概念(ユーザー、商品等)に対応
行(Row)レコード、タプル1 件分のデータ
列(Column)カラム、属性データの項目(名前、メールアドレス等)

主キー(Primary Key)

テーブル内の各行を一意に識別するための列(または列の組み合わせ)。主キーの値は重複してはならず、NULL(空)も許されない。

users テーブルの主キー: id 列
→ id = 1 の行は必ず 1 つだけ存在する

外部キー(Foreign Key)

他のテーブルの主キーを参照する列。テーブル間のリレーションを表現するために使用する。

users.dept_id → departments.id を参照

departments テーブル
┌─────┬──────────┐
│ id  │ name     │
├─────┼──────────┤
│ 10  │ 営業部   │
│ 20  │ 開発部   │
└─────┴──────────┘

外部キー制約を設定することで、存在しない部署 ID(例: dept_id = 99)を users テーブルに登録しようとするとエラーになる。これを 参照整合性 と呼ぶ。

リレーション(関連)

テーブル間の関係には以下の 3 種類がある。

関連の種類説明
1 対 11 つの行が他のテーブルの 1 つの行と対応ユーザーとプロフィール
1 対多1 つの行が他のテーブルの複数の行と対応部署とユーザー
多対多両方のテーブルの行が互いに複数と対応ユーザーとロール

多対多の関連は、中間テーブル(関連テーブル)を使って表現する。

ACID 特性

RDB のトランザクション(一連の処理のまとまり)が満たすべき 4 つの性質を ACID 特性 と呼ぶ。

特性英語説明
原子性Atomicityトランザクション内の処理はすべて成功するか、すべて失敗する
一貫性Consistencyトランザクション前後でデータの整合性が保たれる
独立性Isolation複数のトランザクションが互いに干渉しない
永続性Durabilityコミットされたデータは永続的に保存される

例えば、銀行の振込処理では「A 口座から引き落とし」と「B 口座に入金」が一つのトランザクションになる。原子性により、引き落としだけ成功して入金が失敗するという状態は発生しない。

トランザクション

トランザクションは、一連のデータ操作をひとまとまりとして扱う仕組みである。

BEGIN       ← トランザクション開始
  UPDATE ... ← A 口座から引き落とし
  UPDATE ... ← B 口座に入金
COMMIT      ← すべての変更を確定

何か問題があった場合:
ROLLBACK    ← すべての変更を取り消し

COMMIT はトランザクション内の変更をすべて確定する操作、ROLLBACK はすべて取り消す操作である。

SIer での使われ方

よく使われる RDB 製品

SIer の現場では以下の RDB 製品がよく使用される。

製品特徴
Oracle Databaseエンタープライズ向けの定番。大規模案件で多い
PostgreSQLOSS。コスト重視の案件で増加中
MySQLWeb 系で人気。SIer でも小〜中規模案件で使用
SQL ServerMicrosoft 製。.NET 系の案件で多い

設計書との関連

SIer のプロジェクトでは、RDB に関連する以下の設計書が作成される。

  • ER 図 --- テーブル間のリレーションを図で表現
  • テーブル定義書 --- 各テーブルのカラム名・型・制約を定義
  • CRUD 図 --- どの機能がどのテーブルに対してどの操作を行うかを一覧化

これらの設計書を読み書きするためには、RDB の基礎概念の理解が前提となる。

まとめ

  • RDB はデータをテーブル形式で管理し、テーブル間をリレーションで関連づけるデータベースである
  • 主キーで行を一意に識別し、外部キーでテーブル間の関連を表現する
  • ACID 特性によりデータの整合性が保証され、トランザクションで一連の処理を安全に実行できる
  • SIer の業務システムではほぼ必ず RDB が使用されており、基礎概念の理解は必須である
  • ER 図やテーブル定義書など、設計書の読み書きにも直結する知識である