PUBLIC
DATAリレーショナルデータベース6 MIN READ

TERM 033

RDB

表と関係で、整合したデータを管理する

RDB(リレーショナルデータベース)は、行と列で構成されるテーブルにデータを格納し、キーを使ってテーブル同士の関連付けを表現するデータベースです。SQLを用いて検索や更新を行い、トランザクション機能によって一連の処理の整合性を厳密に保証します。

01MODEL表と関係を定義
02QUERYSQLで操作
03COMMIT整合して確定
OVERVIEW

表と表の関係を使って構造化データを管理する仕組みの全体像。

CONTENTSこの記事の目次

01 — DEFINITION

RDBとは
何か

RDB(リレーショナルデータベース)は、行と列で構成されるテーブルにデータを格納し、キーを使ってテーブル同士の関連付けを表現するデータベースです。SQLを用いて検索や更新を行い、トランザクション機能によって一連の処理の整合性を厳密に保証します。

02 — HOW IT WORKS

仕組みを
3段階で見る

細部へ入る前に、入力から結果までの役割を順番に捉えます。

INPUTPROCESSOUTPUT
01MODEL

表と関係を定義

型、主キー、外部キー、制約を設計する。

02QUERY

SQLで操作

条件指定、テーブル結合、集計処理を行って必要なデータを取得・操作する。

03COMMIT

整合して確定

トランザクション内の一連の変更を、すべて確定(コミット)するかすべて取り消す(ロールバック)か制御する。

PROCESS

RDBを理解するときの、最小の処理単位です。

03 — ESSENTIALS

押さえるべき
3つの要点

名前だけでなく、この3点の関係まで理解すると実装へつなげやすくなります。

01PRIMARY KEY

行の識別子

各行を重複なく特定する安定した値です。

02FOREIGN KEY

表の関係

参照先が存在することを制約として保証します。

03TRANSACTION

操作のまとまり

複数変更を途中状態のまま確定しないよう制御します。

04 — REAL WORLD EXAMPLE

注文と注文明細を保存する

一つの注文には複数商品が含まれ、存在する顧客へ結び付きます。

SCENARIO / RDBSTEP BY STEP
  1. 01

    customersテーブルとordersテーブルを外部キーで関連付ける

  2. 02

    order_itemsテーブルへ注文商品と数量を記録する

  3. 03

    すべてのデータ変更をひとつのトランザクション内でコミットする

RESULT注文だけ存在して明細が欠けるような途中状態を避け、関係を使って検索できます。

05 — WATCH OUT

理解するときの
注意点

便利な仕組みほど、守備範囲と失敗の前提を明確にします。

01

必要な制約をアプリだけに置かない

NOT NULLやUNIQUE、外部キーでデータベースにもルールを持たせます。

02

インデックスを安易に増やしすぎない

インデックスを追加すると検索は高速化されますが、データの書き込み負荷やストレージ使用量が増加するため、実行頻度の高いクエリを見極めて設定します。

IN ONE SENTENCE

RDBとは?

表と表の関係を使って構造化データを管理する仕組み。

KEEP EXPLORING

DATASQL掲載中WEBAPI掲載中WEBCache掲載中