30 lines
987 B
MySQL
30 lines
987 B
MySQL
|
|
CREATE TABLE IF NOT EXISTS channel (
|
||
|
|
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||
|
|
guild_id integer NOT NULL,
|
||
|
|
channel_id integer NOT NULL,
|
||
|
|
/* last_message needs to be set to 1420070400.0, which is Jan 1 2015 */
|
||
|
|
last_message decimal NOT NULL DEFAULT 1420070400.0
|
||
|
|
);
|
||
|
|
|
||
|
|
CREATE UNIQUE INDEX IF NOT EXISTS unique_channel ON channel(channel_id);
|
||
|
|
|
||
|
|
CREATE TABLE IF NOT EXISTS user (
|
||
|
|
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||
|
|
guild_id integer NOT NULL,
|
||
|
|
member_id integer NOT NULL,
|
||
|
|
reply_chance real NOT NULL,
|
||
|
|
listen integer NOT NULL DEFAULT 1
|
||
|
|
);
|
||
|
|
|
||
|
|
CREATE UNIQUE INDEX IF NOT EXISTS guild_member ON user(guild_id, member_id);
|
||
|
|
|
||
|
|
CREATE TABLE IF NOT EXISTS chain (
|
||
|
|
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||
|
|
user integer NOT NULL,
|
||
|
|
value text NOT NULL,
|
||
|
|
weight integer NOT NULL DEFAULT 1,
|
||
|
|
next text NOT NULL,
|
||
|
|
FOREIGN KEY(user) REFERENCES user(id)
|
||
|
|
);
|
||
|
|
|
||
|
|
CREATE UNIQUE INDEX IF NOT EXISTS chain_value_next ON chain(user, value, next);
|