From: Dylan Lloyd Date: Fri, 4 Oct 2013 07:18:01 +0000 (+0000) Subject: fix record dependencies X-Git-Url: https://disinclined.org/git/?a=commitdiff_plain;h=b6a6f3a06ee585c17fb7fe8c7aa5dae80e8db5d6;hp=61350d3c8d37c34cd66384e7170831a354a0ae0f;p=mudd.git fix record dependencies --- diff --git a/db.sql b/db.sql index cbc8b3c..23ccd13 100644 --- a/db.sql +++ b/db.sql @@ -29,15 +29,17 @@ CREATE TABLE `messages` ( `source` int, `sent` timestamp default current_timestamp, PRIMARY KEY (`id`), - CONSTRAINT `origin` FOREIGN KEY (`source`) REFERENCES `players` (`id`), - CONSTRAINT `addressable` FOREIGN KEY (`destination`) REFERENCES `players` (`id`), + CONSTRAINT `origin` FOREIGN KEY (`source`) REFERENCES `players` (`id`) + ON DELETE CASCADE, + CONSTRAINT `addressable` FOREIGN KEY (`destination`) REFERENCES `players` (`id`) + ON DELETE CASCADE, CONSTRAINT `place` FOREIGN KEY (`room`) REFERENCES `rooms` (`id`) ); CREATE EVENT `purge_inactive_players` - ON SCHEDULE EVERY 1 MINUTE + ON SCHEDULE EVERY 1 MINUTE STARTS now() DO DELETE FROM `players` WHERE `last_active` < now() - interval 5 minute; CREATE EVENT `purge_old_messages` - ON SCHEDULE EVERY 1 MINUTE + ON SCHEDULE EVERY 1 MINUTE STARTS now() DO DELETE FROM `messages` WHERE `sent` < now() - interval 5 minute;