diff --git a/src/db/database.sql b/src/db/database.sql index 0961bf1..2cc0350 100644 --- a/src/db/database.sql +++ b/src/db/database.sql @@ -40,8 +40,8 @@ CREATE TABLE IF NOT EXISTS team ( CREATE TABLE IF NOT EXISTS team_member ( team_id INT NOT NULL, user_id INT NOT NULL, - FOREIGN KEY (team_id) REFERENCES team(id), - FOREIGN KEY (user_id) REFERENCES user(id) + FOREIGN KEY (team_id) REFERENCES team(id) ON DELETE CASCADE, + FOREIGN KEY (user_id) REFERENCES user(id) ON DELETE CASCADE ); -- team draft @@ -49,7 +49,7 @@ CREATE TABLE IF NOT EXISTS team_draft ( member_one_name VARCHAR(255) NOT NULL, member_two_name VARCHAR(255) NOT NULL, team_id INT NOT NULL, - FOREIGN KEY (team_id) REFERENCES team(id) + FOREIGN KEY (team_id) REFERENCES team(id) ON DELETE CASCADE ); -- death @@ -57,8 +57,8 @@ CREATE TABLE IF NOT EXISTS death ( message VARCHAR(1024) NOT NULL, dead_user_id INT NOT NULL, killer_user_id INT, - FOREIGN KEY (dead_user_id) REFERENCES user(id), - FOREIGN KEY (killer_user_id) REFERENCES user(id) + FOREIGN KEY (dead_user_id) REFERENCES user(id) ON DELETE CASCADE, + FOREIGN KEY (killer_user_id) REFERENCES user(id) ON DELETE CASCADE ); -- strike reason @@ -73,7 +73,7 @@ CREATE TABLE IF NOT EXISTS strike ( id INT AUTO_INCREMENT PRIMARY KEY, at TIMESTAMP NOT NULL, strike_reason_id INT NOT NULL, - FOREIGN KEY (strike_reason_id) REFERENCES strike_reason(id) + FOREIGN KEY (strike_reason_id) REFERENCES strike_reason(id) ON DELETE CASCADE ); -- report @@ -85,8 +85,8 @@ CREATE TABLE IF NOT EXISTS report ( created_at TIMESTAMP, reporter_team_id INT NOT NULL, reported_team_id INT, - FOREIGN KEY (reporter_team_id) REFERENCES team(id), - FOREIGN KEY (reported_team_id) REFERENCES team(id) + FOREIGN KEY (reporter_team_id) REFERENCES team(id) ON DELETE CASCADE, + FOREIGN KEY (reported_team_id) REFERENCES team(id) ON DELETE CASCADE ); -- report status @@ -97,9 +97,9 @@ CREATE TABLE IF NOT EXISTS report_status ( report_id INT NOT NULL UNIQUE, reviewer_id INT, strike_id INT, - FOREIGN KEY (report_id) REFERENCES report(id), - FOREIGN KEY (reviewer_id) REFERENCES admin(id), - FOREIGN KEY (strike_id) REFERENCES strike(id) + FOREIGN KEY (report_id) REFERENCES report(id) ON DELETE CASCADE, + FOREIGN KEY (reviewer_id) REFERENCES admin(id) ON DELETE CASCADE, + FOREIGN KEY (strike_id) REFERENCES strike(id) ON DELETE CASCADE ); -- feedback @@ -111,7 +111,7 @@ CREATE TABLE IF NOT EXISTS feedback ( url_hash VARCHAR(255) NOT NULL UNIQUE, last_changed TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, user_id INT, - FOREIGN KEY (user_id) REFERENCES user(id) + FOREIGN KEY (user_id) REFERENCES user(id) ON DELETE CASCADE ); -- settings