· 8 years ago · Jul 04, 2018, 11:24 PM
1CREATE TABLE IF NOT EXISTS `adm_groups` ( //add a description field?
2 `gid` INT(6) NOT NULL AUTO_INCREMENT,
3 `name` VARCHAR(128) NOT NULL DEFAULT 'unnamed',
4 `flags` INT(10) NOT NULL DEFAULT '0',
5 `immunity` INT(10) NOT NULL DEFAULT '0',
6 PRIMARY KEY (`gid`)
7) ENGINE=INNODB;
8
9CREATE TABLE IF NOT EXISTS `adm_servers` (
10 `sid` INT(6) NOT NULL AUTO_INCREMENT,
11 `hostname` VARCHAR(128) NOT NULL DEFAULT 'unnamed', //hostname in game
12 `ip` VARCHAR(64) NOT NULL, //ip convar in game
13 `port` INT(5) NOT NULL, //hostport convar in game
14 `engine` INT(10) NOT NULL, //corresponds to EngineVersion enum
15 `version` VARCHAR(32) NOT NULL, //version of the server plugin running
16 PRIMARY KEY (`sid`),
17 UNIQUE KEY `ip` (`ip`, `port`)
18) ENGINE=INNODB;
19
20CREATE TABLE IF NOT EXISTS `adm_users` ( //Or call this adm_admins?
21 `uid` INT(6) NOT NULL AUTO_INCREMENT,
22 `name` VARCHAR(128) NOT NULL, //admin name, what is in !who
23 `ingamename` VARCHAR(128), //name on steam
24 `authid` INT(11) NOT NULL,
25 PRIMARY KEY (`uid`),
26 UNIQUE KEY `authid` (`authid`)
27) ENGINE=INNODB;
28
29CREATE TABLE IF NOT EXISTS `adm_group_servers` (
30 `gid` INT(6) NOT NULL,
31 `sid` INT(6) NOT NULL,
32 PRIMARY KEY (`gid`, `sid`),
33 FOREIGN KEY (`gid`) REFERENCES adm_groups(`gid`),
34 FOREIGN KEY (`sid`) REFERENCES adm_servers(`sid`),
35 UNIQUE KEY `gid` (`gid`, `sid`)
36) ENGINE=INNODB;
37
38CREATE TABLE IF NOT EXISTS `adm_user_groups` (
39 `gid` INT(6) NOT NULL,
40 `uid` INT(6) NOT NULL,
41 PRIMARY KEY (`gid`, `uid`),
42 FOREIGN KEY (`gid`) REFERENCES adm_groups(`gid`),
43 FOREIGN KEY (`uid`) REFERENCES adm_users(`uid`),
44 UNIQUE KEY `gid` (`gid`, `uid`)
45) ENGINE=INNODB;