CREATE TABLE project (
title VARCHAR(64) NOT NULL,
body TEXT DEFAULT NULL,
difficulty INT NOT NULL DEFAULT 1 REFERENCES difficulty(diff),
trigger_date DATE DEFAULT NULL,
started DATE NOT NULL DEFAULT CURRENT_DATE,
span INT NOT NULL DEFAULT 7 -- time to last for in days
);
CREATE TABLE difficulty (
diff VARCHAR(16)
INSERT INTO difficulty VALUES('Easy');
INSERT INTO difficulty VALUES('Medium');
INSERT INTO difficulty VALUES('Hard');
INSERT INTO difficulty VALUES('Fuck You');
CREATE TABLE tag (
t VARCHAR(16)
-- Some default (not all) tags
INSERT INTO tag VALUES('AI');
INSERT INTO tag VALUES('Algorithm');
INSERT INTO tag VALUES('Calculators');
INSERT INTO tag VALUES('Games');
INSERT INTO tag VALUES('Math');
INSERT INTO tag VALUES('Networking');
INSERT INTO tag VALUES('Rendering');
INSERT INTO tag VALUES('Simulation');
INSERT INTO tag VALUES('Tools');
CREATE TABLE project_tag (
project INT REFERENCES project(rowid),
tag INT REFERENCES tag(rowid)