bitque/migrations/2020-05-06-130610_add_custom_columns/up.sql

38 lines
1.0 KiB
MySQL
Raw Normal View History

2020-05-06 22:24:58 +02:00
CREATE TABLE issue_statuses (
id serial PRIMARY KEY NOT NULL,
name VARCHAR NOT NULL,
position int NOT NULL,
project_id int NOT NULL REFERENCES projects (id),
created_at timestamp NOT NULL DEFAULT now(),
updated_at timestamp NOT NULL DEFAULT now()
);
INSERT INTO issue_statuses (name, project_id, position)
SELECT 'backlog', id, 1
FROM projects;
INSERT INTO issue_statuses (name, project_id, position)
SELECT 'selected', id, 2
FROM projects;
INSERT INTO issue_statuses (name, project_id, position)
SELECT 'in_progress', id, 3
FROM projects;
INSERT INTO issue_statuses (name, project_id, position)
SELECT 'done', id, 4
FROM projects;
ALTER TABLE issues
ADD COLUMN issue_status_id INT REFERENCES issue_statuses ( id );
UPDATE issues
SET issue_status_id = issue_statuses.id
FROM issue_statuses
2020-05-06 23:44:48 +02:00
WHERE issue_statuses.name = issues.status :: text AND issues.project_id = issue_statuses.project_id;
2020-05-06 22:24:58 +02:00
ALTER TABLE issues DROP COLUMN status;
ALTER TABLE issues ALTER COLUMN issue_status_id SET NOT NULL;
2023-04-01 22:31:57 +02:00
DROP TYPE IF EXISTS "IssueStatusMapping";