@@ -106,36 +106,33 @@ but be aware that some functionalities requires data changes (update queries).
106106
107107If you don't have any database model yet you can use below tables (MySQL):
108108```
109- CREATE TABLE sql_users
109+ CREATE TABLE sql_user
110110(
111- id INT AUTO_INCREMENT PRIMARY KEY,
112- username VARCHAR(16) NOT NULL,
111+ username VARCHAR(16) PRIMARY KEY,
113112 display_name TEXT NULL,
114113 email TEXT NULL,
115114 home TEXT NULL,
116115 password TEXT NOT NULL,
117116 active TINYINT(1) NOT NULL DEFAULT '1',
118- can_change_avatar BOOLEAN NOT NULL DEFAULT FALSE,
119- CONSTRAINT users_username_uindex UNIQUE (username)
117+ can_change_avatar BOOLEAN NOT NULL DEFAULT FALSE
120118);
121119
122120CREATE TABLE sql_group
123121(
124- id INT AUTO_INCREMENT PRIMARY KEY,
125- name VARCHAR(16) NOT NULL,
122+ name VARCHAR(16) PRIMARY KEY,
126123 display_name TEXT NULL,
127- admin BOOLEAN NOT NULL DEFAULT FALSE,
128- CONSTRAINT group_name_uindex UNIQUE (name)
124+ admin BOOLEAN NOT NULL DEFAULT FALSE
129125);
130126
131127CREATE TABLE sql_user_group
132128(
133- id INT AUTO_INCREMENT PRIMARY KEY,
134- group_name VARCHAR(16) NOT NULL,
135129 username VARCHAR(16) NOT NULL,
136- CONSTRAINT user_group_group_name_username_uindex UNIQUE (group_name, username),
137- INDEX user_group_group_name_index (group_name),
138- INDEX user_group_username_index (username)
130+ group_name VARCHAR(16) NOT NULL,
131+ PRIMARY KEY (username, group_name),
132+ FOREIGN KEY (username) REFERENCES sql_user (username),
133+ FOREIGN KEY (group_name) REFERENCES sql_group (name),
134+ INDEX sql_user_group_username_idx (username),
135+ INDEX sql_user_group_group_name_idx (group_name)
139136);
140137```
141138
0 commit comments