0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

phpmyadminで外部キー制約を作る方法

0
Last updated at Posted at 2026-01-16

何をする?

phpmyadminで外部キーを設定する。

手順

① テーブル作成

postsテーブル(親)

スクリーンショット 2026-01-16 16.22.59.png

repliesテーブル(子)

この段階では「repliesテーブル」の「post_id」には銀色の鍵は付いてない。安心して。
スクリーンショット 2026-01-16 16.24.55.png

② インデックス化

「repliesテーブル(子)」の「post_id」をインデックス化
スクリーンショット 2026-01-16 16.29.20.png

こうなる
スクリーンショット 2026-01-16 16.32.53.png

③ リレーション設定

「リレーションビュー」をクリック

スクリーンショット 2026-01-16 16.39.15.png
画像のように設定する
以下解説

制約プロパティ

・名前:任意(識別のために書くと良いよ)
・ON DELETE:CASCADE(投稿を削除すると、該当返信を削除するようにする)
・ON UPDATE:CASCADE or RESTRICT(用途に合わせて)

カラム

・「repliesテーブル(子)」の「post_id(外部キー)」

外部キー制約 (INNODB)

・データベース:該当データベース
・テーブル:「postsテーブル(子)」
・カラム:「repliesテーブル(子)」の「post_id」

SQLのプレビューをこうなる

ALTER TABLE replies ADD CONSTRAINT fk_replies_posts FOREIGN KEY (post_id) REFERENCES posts(post_id) ON DELETE CASCADE ON UPDATE RESTRICT;
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?