From 93731a987e98f4497c0d78f8319ffd773b52b728 Mon Sep 17 00:00:00 2001 From: jc <46619361+juancwu@users.noreply.github.com> Date: Mon, 22 Apr 2024 23:42:24 -0400 Subject: [PATCH] add db migrations --- migrations/20240423031756_create-projects-table.down.sql | 1 + migrations/20240423031756_create-projects-table.up.sql | 6 ++++++ migrations/20240423032721_create-techs-table.down.sql | 1 + migrations/20240423032721_create-techs-table.up.sql | 5 +++++ ...240423032933_create-projects-techs-lookup-table.down.sql | 1 + ...20240423032933_create-projects-techs-lookup-table.up.sql | 5 +++++ 6 files changed, 19 insertions(+) create mode 100644 migrations/20240423031756_create-projects-table.down.sql create mode 100644 migrations/20240423031756_create-projects-table.up.sql create mode 100644 migrations/20240423032721_create-techs-table.down.sql create mode 100644 migrations/20240423032721_create-techs-table.up.sql create mode 100644 migrations/20240423032933_create-projects-techs-lookup-table.down.sql create mode 100644 migrations/20240423032933_create-projects-techs-lookup-table.up.sql diff --git a/migrations/20240423031756_create-projects-table.down.sql b/migrations/20240423031756_create-projects-table.down.sql new file mode 100644 index 0000000..48a1f84 --- /dev/null +++ b/migrations/20240423031756_create-projects-table.down.sql @@ -0,0 +1 @@ +DROP TABLE projects; diff --git a/migrations/20240423031756_create-projects-table.up.sql b/migrations/20240423031756_create-projects-table.up.sql new file mode 100644 index 0000000..76cd3b9 --- /dev/null +++ b/migrations/20240423031756_create-projects-table.up.sql @@ -0,0 +1,6 @@ +CREATE TABLE projects ( + id SERIAL PRIMARY KEY, + name VARCHAR(255) NOT NULL, + repository_url VARCHAR(255), + description VARCHAR(255) NOT NULL +); diff --git a/migrations/20240423032721_create-techs-table.down.sql b/migrations/20240423032721_create-techs-table.down.sql new file mode 100644 index 0000000..5ce6ef8 --- /dev/null +++ b/migrations/20240423032721_create-techs-table.down.sql @@ -0,0 +1 @@ +DROP TABLE technologies; diff --git a/migrations/20240423032721_create-techs-table.up.sql b/migrations/20240423032721_create-techs-table.up.sql new file mode 100644 index 0000000..5263432 --- /dev/null +++ b/migrations/20240423032721_create-techs-table.up.sql @@ -0,0 +1,5 @@ +CREATE TABLE technologies ( + id SERIAL PRIMARY KEY, + name VARCHAR(25) NOT NULL UNIQUE, + url TEXT NOT NULL +); diff --git a/migrations/20240423032933_create-projects-techs-lookup-table.down.sql b/migrations/20240423032933_create-projects-techs-lookup-table.down.sql new file mode 100644 index 0000000..9bba15d --- /dev/null +++ b/migrations/20240423032933_create-projects-techs-lookup-table.down.sql @@ -0,0 +1 @@ +DROP TABLE projects_technologies; diff --git a/migrations/20240423032933_create-projects-techs-lookup-table.up.sql b/migrations/20240423032933_create-projects-techs-lookup-table.up.sql new file mode 100644 index 0000000..50e54d8 --- /dev/null +++ b/migrations/20240423032933_create-projects-techs-lookup-table.up.sql @@ -0,0 +1,5 @@ +CREATE TABLE projects_technologies ( + project_id INTEGER NOT NULL REFERENCES projects(id), + technology_id INTEGER NOT NULL REFERENCES technologies(id), + PRIMARY KEY (project_id, technology_id) -- ensures a project-technology pair is unique +);