17 lines
780 B
SQL
17 lines
780 B
SQL
|
|
-- +goose Up
|
||
|
|
-- Баны сервера (AGENT.md 7.17): отдельная таблица, чтобы бан переживал
|
||
|
|
-- исключение участника и запрещал повторный вход по приглашению.
|
||
|
|
CREATE TABLE guild_bans (
|
||
|
|
guild_id INTEGER NOT NULL REFERENCES guilds (id) ON DELETE CASCADE,
|
||
|
|
user_id INTEGER NOT NULL REFERENCES users (id) ON DELETE CASCADE,
|
||
|
|
actor_id INTEGER REFERENCES users (id) ON DELETE SET NULL,
|
||
|
|
reason TEXT NOT NULL DEFAULT '',
|
||
|
|
created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ', 'now')),
|
||
|
|
PRIMARY KEY (guild_id, user_id)
|
||
|
|
);
|
||
|
|
CREATE INDEX guild_bans_user_idx ON guild_bans (user_id);
|
||
|
|
|
||
|
|
-- +goose Down
|
||
|
|
DROP INDEX guild_bans_user_idx;
|
||
|
|
DROP TABLE guild_bans;
|