diff options
Diffstat (limited to 'schemas')
-rw-r--r-- | schemas/mysql.php | 16 | ||||
-rw-r--r-- | schemas/sqlite.php | 15 |
2 files changed, 31 insertions, 0 deletions
diff --git a/schemas/mysql.php b/schemas/mysql.php index 46f56e7b..eb869465 100644 --- a/schemas/mysql.php +++ b/schemas/mysql.php @@ -2,6 +2,22 @@ namespace Schema; +function version_16($pdo) +{ + $pdo->exec(" + CREATE TABLE project_has_categories ( + id INT NOT NULL AUTO_INCREMENT, + name VARCHAR(255), + project_id INT, + PRIMARY KEY (id), + UNIQUE KEY `idx_project_category` (project_id, name), + FOREIGN KEY(project_id) REFERENCES projects(id) ON DELETE CASCADE + ) ENGINE=InnoDB CHARSET=utf8" + ); + + $pdo->exec("ALTER TABLE tasks ADD COLUMN category_id INT DEFAULT 0"); +} + function version_15($pdo) { $pdo->exec("ALTER TABLE projects ADD COLUMN last_modified INT DEFAULT 0"); diff --git a/schemas/sqlite.php b/schemas/sqlite.php index 94580235..b444faa5 100644 --- a/schemas/sqlite.php +++ b/schemas/sqlite.php @@ -2,6 +2,21 @@ namespace Schema; +function version_16($pdo) +{ + $pdo->exec(" + CREATE TABLE project_has_categories ( + id INTEGER PRIMARY KEY, + name TEXT COLLATE NOCASE, + project_id INT, + UNIQUE (project_id, name), + FOREIGN KEY(project_id) REFERENCES projects(id) ON DELETE CASCADE + )" + ); + + $pdo->exec("ALTER TABLE tasks ADD COLUMN category_id INTEGER DEFAULT 0"); +} + function version_15($pdo) { $pdo->exec("ALTER TABLE projects ADD COLUMN last_modified INTEGER DEFAULT 0"); |