aboutsummaryrefslogtreecommitdiff
path: root/migrations/000-leave-gorm.sql
diff options
context:
space:
mode:
Diffstat (limited to 'migrations/000-leave-gorm.sql')
-rw-r--r--migrations/000-leave-gorm.sql15
1 files changed, 8 insertions, 7 deletions
diff --git a/migrations/000-leave-gorm.sql b/migrations/000-leave-gorm.sql
index f80555a..360e2e3 100644
--- a/migrations/000-leave-gorm.sql
+++ b/migrations/000-leave-gorm.sql
@@ -9,13 +9,14 @@ CREATE TABLE IF NOT EXISTS guilds (
);
CREATE TABLE IF NOT EXISTS copaings (
- id snowflake PRIMARY KEY,
- guild_id snowflake REFERENCES guilds(id) NOT NULL
+ id snowflake UNIQUE,
+ guild_id snowflake REFERENCES guilds(id) ON DELETE CASCADE,
+ PRIMARY KEY(id, guild_id)
);
CREATE TABLE IF NOT EXISTS copaing_xps (
- copaing_id snowflake REFERENCES copaings(id) NOT NULL,
- guild_id snowflake REFERENCES copaings(id) NOT NULL,
+ copaing_id snowflake REFERENCES copaings(id) ON DELETE CASCADE,
+ guild_id snowflake REFERENCES copaings(id) ON DELETE CASCADE,
xp uint DEFAULT 0,
created_at TIMESTAMP DEFAULT now(),
PRIMARY KEY(copaing_id, guild_id, created_at)
@@ -24,7 +25,7 @@ CREATE TABLE IF NOT EXISTS copaing_xps (
CREATE TABLE IF NOT EXISTS xp_roles (
xp uint,
role snowflake,
- guild_id snowflake REFERENCES guilds(id),
+ guild_id snowflake REFERENCES guilds(id) ON DELETE CASCADE,
PRIMARY KEY(xp, role, guild_id)
);
@@ -32,13 +33,13 @@ CREATE TABLE IF NOT EXISTS role_react_messages (
id SERIAL PRIMARY KEY,
message_id snowflake,
channel_id snowflake,
- guild_id snowflake REFERENCES guilds(id),
+ guild_id snowflake REFERENCES guilds(id) ON DELETE CASCADE,
note TEXT
);
CREATE TABLE IF NOT EXISTS role_reacts (
role snowflake,
- message_id INTEGER REFERENCES role_react_messages(id),
+ message_id INTEGER REFERENCES role_react_messages(id) ON DELETE CASCADE,
reaction TEXT,
PRIMARY KEY(role, message_id, reaction)
);