DROP TABLE IF EXISTS articles_tags; DROP TABLE IF EXISTS tags; DROP TABLE IF EXISTS articles; DROP TABLE IF EXISTS issues; DROP TABLE IF EXISTS users; CREATE TABLE users ( id INT AUTO_INCREMENT, username VARCHAR(15) NOT NULL UNIQUE, password VARCHAR(60) NOT NULL, first_name VARCHAR(50) NOT NULL, last_name VARCHAR(50) NOT NULL, role INT NOT NULL, PRIMARY KEY (id) ); CREATE TABLE issues ( id INT AUTO_INCREMENT, published BOOL NOT NULL, PRIMARY KEY (id) ); CREATE TABLE articles ( id INT AUTO_INCREMENT, title VARCHAR(255) NOT NULL, created TIMESTAMP DEFAULT CURRENT_TIMESTAMP, banner_link VARCHAR(255), summary TEXT NOT NULL, content_link VARCHAR(255), published BOOL NOT NULL, rejected BOOL NOT NULL, author_id INT NOT NULL, issue_id INT NOT NULL, edited_id INT, is_in_issue BOOL NOT NULL, auto_generated BOOL NOT NULL, PRIMARY KEY (id), FOREIGN KEY (author_id) REFERENCES users (id), FOREIGN KEY (issue_id) REFERENCES issues (id) ); CREATE TABLE tags ( id INT AUTO_INCREMENT, name VARCHAR(50) NOT NULL UNIQUE, PRIMARY KEY (id) ); CREATE TABLE articles_tags ( article_id INT, tag_id INT, PRIMARY KEY (article_id, tag_id), FOREIGN KEY (article_id) REFERENCES articles (id), FOREIGN KEY (tag_id) REFERENCES tags (id) );