データベースにおける「on delete cascade」の使用方法と例


「on delete cascade」の使用方法と例を以下に示します。

  1. テーブルの作成: まず、親テーブルと子テーブルの関係を持つ2つのテーブルを作成します。以下は例です。
CREATE TABLE parent (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);
CREATE TABLE child (
    id INT PRIMARY KEY,
    parent_id INT,
    name VARCHAR(50),
    FOREIGN KEY (parent_id) REFERENCES parent(id) ON DELETE CASCADE
);
  1. データの挿入: 親テーブルと子テーブルにデータを挿入します。
INSERT INTO parent (id, name) VALUES (1, '親1');
INSERT INTO parent (id, name) VALUES (2, '親2');
INSERT INTO child (id, parent_id, name) VALUES (1, 1, '子1');
INSERT INTO child (id, parent_id, name) VALUES (2, 1, '子2');
INSERT INTO child (id, parent_id, name) VALUES (3, 2, '子3');
  1. データの削除: 親テーブルの行を削除すると、関連する子テーブルの行も自動的に削除されます。
DELETE FROM parent WHERE id = 1;

上記の削除文を実行すると、親テーブルのidが1の行が削除され、関連する子テーブル(child)のparent_idが1の行も自動的に削除されます。

以上が「on delete cascade」の使用方法と例です。この機能を使用することで、データベース内の関連するデータを一貫して維持することができます。