データベース設計はバックエンド開発の核心です。SQLの基礎とテーブル設計の考え方を学びます。
SQLの基本操作(CRUD)
-- テーブル作成
CREATE TABLE users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
email TEXT UNIQUE NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
-- データ挿入
INSERT INTO users (name, email) VALUES ('Taro', 'taro@example.com');
-- データ取得
SELECT * FROM users;
SELECT name, email FROM users WHERE id = 1;
SELECT * FROM users ORDER BY created_at DESC LIMIT 10;
-- データ更新
UPDATE users SET name = 'Jiro' WHERE id = 1;
-- データ削除
DELETE FROM users WHERE id = 1;テーブル結合(JOIN)
CREATE TABLE posts (
id INTEGER PRIMARY KEY AUTOINCREMENT,
user_id INTEGER REFERENCES users(id),
title TEXT NOT NULL,
body TEXT
);
-- INNER JOIN: 両方に存在するデータを取得
SELECT users.name, posts.title
FROM posts
INNER JOIN users ON posts.user_id = users.id;良いテーブル設計の原則
| 原則 | 内容 |
|---|---|
| 主キー(PRIMARY KEY) | 各レコードを一意に識別するidを必ず設ける |
| NOT NULL制約 | 必須カラムにはNOT NULLを付ける |
| UNIQUE制約 | 重複してはいけないカラム(メールなど)に付ける |
| 外部キー(FOREIGN KEY) | テーブル間の関連をREFERENCESで定義する |
| 正規化 | データの重複を排除してテーブルを分割する |
まとめ
- SQLのCRUDはSELECT・INSERT・UPDATE・DELETEの4命令
- JOINで複数テーブルを結合してデータを取得できる
- 主キー・NOT NULL・UNIQUE・外部キーで整合性を保つ



コメント