1
DELETE FROM users WHERE id='some_id'
を実行すると、beta_keysテーブルのレコードは削除されません。外部キー削除カスケードの制約が動作しないpostgres
beta_keysテーブル:
CREATE TABLE beta_keys (
id serial PRIMARY KEY,
key VARCHAR(60) UNIQUE NOT NULL,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP
);
ユーザーテーブル:
CREATE TABLE users (
id serial PRIMARY KEY,
email VARCHAR (256) UNIQUE NOT NULL,
password VARCHAR (60) NOT NULL,
beta_key_id INTEGER,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP,
CONSTRAINT users_beta_key_id_fkey FOREIGN KEY (beta_key_id)
REFERENCES beta_keys (id) MATCH SIMPLE
ON DELETE CASCADE
);
あなたはそれを後方に持っています。 'beta_keys'行が削除されると、ユーザーは削除されます。 – SqlZim