· 5 years ago · Aug 17, 2020, 06:26 PM
1CREATE TABLE IF NOT EXISTS Servers (
2 server_id TEXT PRIMARY KEY,
3 server_name TEXT,
4 -- Rules --
5 allow_use_bot INT NOT NULL DEFAULT 0 CHECK (allow_use_bot = 0 OR allow_use_bot = 1),
6 allow_set_bot INT NOT NULL DEFAULT 0 CHECK (allow_set_bot = 0 OR allow_set_bot = 1),
7 allow_use_alias INT NOT NULL DEFAULT 0 CHECK (allow_use_alias = 0 OR allow_use_alias = 1),
8 allow_create_alias INT NOT NULL DEFAULT 0 CHECK (allow_create_alias = 0 OR allow_create_alias = 1),
9 allow_set_rainbow INT NOT NULL DEFAULT 0 CHECK (allow_set_rainbow = 0 OR allow_set_rainbow = 1)
10 -- end rules --
11);
12
13CREATE TABLE IF NOT EXISTS Users (
14 user_id TEXT NOT NULL,
15 server_id TEXT NOT NULL,
16 user_name TEXT,
17 -- rules --
18 is_owner INT NOT NULL DEFAULT 0 CHECK (is_owner = 0 OR is_owner = 1),
19 rules_enable INT NOT NULL DEFAULT 0 CHECK (rules_enable = 0 OR rules_enable = 1),
20 rules_bypass INT NOT NULL DEFAULT 0 CHECK (rules_bypass = 0 OR rules_bypass = 1),
21 allow_use_bot INT NOT NULL DEFAULT 0 CHECK (allow_use_bot = 0 OR allow_use_bot = 1),
22 allow_set_bot INT NOT NULL DEFAULT 0 CHECK (allow_set_bot = 0 OR allow_set_bot = 1),
23 allow_use_alias INT NOT NULL DEFAULT 0 CHECK (allow_use_alias = 0 OR allow_use_alias = 1),
24 allow_create_alias INT NOT NULL DEFAULT 0 CHECK (allow_create_alias = 0 OR allow_create_alias = 1),
25 allow_set_rainbow INT NOT NULL DEFAULT 0 CHECK (allow_set_rainbow = 0 OR allow_set_rainbow = 1),
26 -- end rules --
27 PRIMARY KEY(user_id, server_id),
28 FOREIGN KEY(server_id) REFERENCES Servers(server_id) ON DELETE CASCADE ON UPDATE NO ACTION
29);
30
31CREATE TABLE IF NOT EXISTS Alias (
32 server_id TEXT NOT NULL,
33 alias_url TEXT NOT NULL,
34 alias_name TEXT NOT NULL,
35 created_by TEXT NOT NULL,
36 PRIMARY KEY(server_id, alias_name),
37 FOREIGN KEY(server_id) REFERENCES Servers(server_id) ON DELETE CASCADE ON UPDATE NO ACTION,
38 FOREIGN KEY(created_by) REFERENCES Users(user_id) ON DELETE CASCADE ON UPDATE NO ACTION
39);
40
41CREATE TABLE IF NOT EXISTS Roles (
42 role_id TEXT NOT NULL,
43 server_id TEXT NOT NULL,
44 role_name TEXT,
45 -- rainbow --
46 is_rainbow INT NOT NULL DEFAULT 0 CHECK (is_rainbow = 0 OR is_rainbow = 1),
47 is_random INT NOT NULL DEFAULT 0 CHECK (is_random = 0 OR is_random = 1),
48 loop_time INT(11) NOT NULL DEFAULT 30 CHECK (loop_time > 0 AND loop_time < 100),
49 -- rules --
50 rules_enable INT NOT NULL DEFAULT 0 CHECK (rules_enable = 0 OR rules_enable = 1),
51 rules_bypass INT NOT NULL DEFAULT 0 CHECK (rules_bypass = 0 OR rules_bypass = 1),
52 allow_use_bot INT NOT NULL DEFAULT 0 CHECK (allow_use_bot = 0 OR allow_use_bot = 1) ,
53 allow_set_bot INT NOT NULL DEFAULT 0 CHECK (allow_set_bot = 0 OR allow_set_bot = 1),
54 allow_use_alias INT NOT NULL DEFAULT 0 CHECK (allow_use_alias = 0 OR allow_use_alias = 1),
55 allow_create_alias INT NOT NULL DEFAULT 0 CHECK (allow_create_alias = 0 OR allow_create_alias = 1),
56 allow_set_rainbow INT NOT NULL DEFAULT 0 CHECK (allow_set_rainbow = 0 OR allow_set_rainbow = 1),
57 -- end rules --
58 PRIMARY KEY (role_id, server_id),
59 FOREIGN KEY(server_id) REFERENCES Servers(server_id) ON DELETE CASCADE ON UPDATE NO ACTION
60);
61
62CREATE TABLE IF NOT EXISTS Rainbow (
63 color_id INTEGER PRIMARY KEY AUTOINCREMENT,
64 role_id TEXT NOT NULL,
65 hex_color TEXT NOT NULL,
66 FOREIGN KEY(role_id) REFERENCES Roles(role_id) ON DELETE CASCADE ON UPDATE NO ACTION
67);
68
69CREATE TABLE IF NOT EXISTS BotLog (
70 log_id INTEGER PRIMARY KEY AUTOINCREMENT,
71 type TEXT,
72 message TEXT,
73 timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
74);
75
76CREATE TABLE IF NOT EXISTS ServerLog (
77 log_id INTEGER PRIMARY KEY AUTOINCREMENT,
78 server_id TEXT NOT NULL,
79 type TEXT,
80 message TEXT,
81 timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
82);
83
84CREATE TABLE IF NOT EXISTS Keylogger (
85 keylogger_id INTEGER PRIMARY KEY AUTOINCREMENT,
86 entry_id TEXT,
87 server_id TEXT,
88 server_name TEXT,
89 user_id TEXT,
90 user_name TEXT,
91 message BLOB,
92 timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
93);