Ceeds Academy教材アプリ教材・症状語・タグで検索
索引グラフ試す
プログラミング言語▸SQL

SQL: 追加・更新・削除(INSERT / UPDATE / DELETE)

hands-on所要 20分最新草稿
前提: SQL: テーブル結合(JOIN)→次: SQL: 集計(COUNT / SUM / GROUP BY)
意味グラフ(この教材と内容的に近い教材・1ネスト)
例え(Analogies)
INSERT/UPDATE/DELETE=台帳の記帳

台帳に行を書き足す(INSERT)、書き換える(UPDATE)、消す(DELETE)。WHEREを書き忘れると全ページに効くので、消しゴムは慎重に。

概要

📍 programming-languages ▸ SQL ▸ 追加・更新・削除 | 種別: hands-on | facts_as_of 2026-06(PostgreSQL 18 / SQLite)

公式ドキュメント — hands-on

🎞 スライド

書き込み系=INSERT / UPDATE / DELETE

読むだけでなく「変える」操作

対応(テキスト図)

INSERT … 行を足す
UPDATE … 既存の行を変える ┐ WHERE を
DELETE … 行を消す ┘ 忘れると全行に効く!

安全に変える

BEGIN → 変更 → 確認 → COMMIT(ダメなら ROLLBACK)

—
出典(sources)

PostgreSQL 18 docs (INSERT/UPDATE/DELETE) ; 2026-06確認

確認問題(Review-Questions)
id=1 の users の age を 21 にするSQLは?コード
基礎公式
解答・解説▾ 開く

UPDATE users SET age = 21 WHERE id = 1;

UPDATE/DELETEで最も危険なミスは?択一
基礎公式
解答・解説▾ 開く

WHERE を書き忘れて全行に適用してしまうこと。トランザクション/バックアップで防ぐ。

目次
例え概要公式ドキュメント出典確認問題
鮮度
最新
更新: 2026-06-15
次回棚卸し: 2027-06-15
周期: 12か月
版: SQL (PostgreSQL 18 / SQLite)

概要

データの追加(INSERT)・更新(UPDATE)・削除(DELETE)。UPDATE/DELETE は対象を WHERE で絞り、トランザクションで安全に行うのが要点。

公式ドキュメント準拠(PostgreSQL 18 / SQLite)

INSERT INTO users (name, age) VALUES ('A', 20);
UPDATE users SET age = 21 WHERE id = 1;
DELETE FROM users WHERE id = 1;
  • ⚠️ UPDATE/DELETE で WHERE を忘れると全行に効く。
  • トランザクション(BEGIN/COMMIT/ROLLBACK)で安全に変更する。

出典: PostgreSQL: INSERT / UPDATE / DELETE

🧭 誤解訂正集

よくある誤解 正しい理解
UPDATE/DELETE は対象だけに効く WHERE が無いと全行に効く
一度実行したら戻せない トランザクション内なら ROLLBACK で戻せる
参照されている行も自由に消せる 外部キー制約で参照先は先に整理が要る

📖 用語

  • INSERT / UPDATE / DELETE … 行の追加/更新/削除。
  • WHERE(書き込み系) … 変更・削除の対象行を絞る条件。
  • トランザクション … 一連の変更をまとめ、COMMIT で確定/ROLLBACK で取消。
  • 外部キー制約 … 存在しない参照先を許さない整合性ルール。

✅ 確認の目安(can-do)

INSERT/UPDATE/DELETE を使い分けて書き込みでき、「なぜ UPDATE/DELETE に WHERE **が要るか・どうトランザクションで守るか」**を説明できる。

⚠️ エラー復旧集

症状 原因 復旧
WHERE 忘れで全行更新 条件未指定 トランザクションで ROLLBACK / バックアップ
null value violates not-null 必須列未指定 NOT NULL 列に値を入れる
foreign key violation 存在しない参照先 参照先の行を先に作る