Merge schemas into one file
This commit is contained in:
@ -1,9 +0,0 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE budgets (
|
||||
id char(26) NOT NULL,
|
||||
name text NOT NULL,
|
||||
last_modification timestamp with time zone
|
||||
);
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE budgets;
|
@ -1,10 +0,0 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE users (
|
||||
id char(26) NOT NULL,
|
||||
email text NOT NULL,
|
||||
name text NOT NULL,
|
||||
password text NOT NULL
|
||||
);
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE users;
|
@ -1,8 +0,0 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE user_budgets (
|
||||
user_id char(26) NOT NULL,
|
||||
budget_id char(26) NOT NULL
|
||||
);
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE user_budgets;
|
@ -1,27 +0,0 @@
|
||||
-- +goose Up
|
||||
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
|
||||
|
||||
ALTER TABLE budgets DROP COLUMN id;
|
||||
ALTER TABLE budgets ADD COLUMN id uuid DEFAULT uuid_generate_v4() NOT NULL;
|
||||
|
||||
ALTER TABLE users DROP COLUMN id;
|
||||
ALTER TABLE users ADD COLUMN id uuid DEFAULT uuid_generate_v4() NOT NULL;
|
||||
|
||||
TRUNCATE TABLE user_budgets;
|
||||
ALTER TABLE user_budgets DROP COLUMN user_id;
|
||||
ALTER TABLE user_budgets DROP COLUMN budget_id;
|
||||
ALTER TABLE user_budgets ADD COLUMN user_id uuid NOT NULL;
|
||||
ALTER TABLE user_budgets ADD COLUMN budget_id uuid NOT NULL;
|
||||
|
||||
-- +goose Down
|
||||
DROP EXTENSION "uuid-ossp";
|
||||
ALTER TABLE budgets DROP COLUMN id;
|
||||
ALTER TABLE budgets ADD COLUMN id char(26) NOT NULL;
|
||||
|
||||
ALTER TABLE users DROP COLUMN id;
|
||||
ALTER TABLE users ADD COLUMN id char(26) NOT NULL;
|
||||
|
||||
ALTER TABLE user_budgets DROP COLUMN user_id;
|
||||
ALTER TABLE user_budgets DROP COLUMN budget_id;
|
||||
ALTER TABLE user_budgets ADD COLUMN user_id char(26) NOT NULL;
|
||||
ALTER TABLE user_budgets ADD COLUMN budget_id char(26) NOT NULL;
|
@ -1,11 +0,0 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE transactions (
|
||||
id uuid DEFAULT uuid_generate_v4() NOT NULL,
|
||||
budget_id uuid NOT NULL,
|
||||
date date NOT NULL,
|
||||
memo text NULL,
|
||||
amount decimal(12,2) NOT NULL
|
||||
);
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE transactions;
|
@ -1,37 +0,0 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE accounts (
|
||||
id uuid DEFAULT uuid_generate_v4() NOT NULL,
|
||||
budget_id uuid NOT NULL,
|
||||
name varchar(50) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE payees (
|
||||
id uuid DEFAULT uuid_generate_v4() NOT NULL,
|
||||
budget_id uuid NOT NULL,
|
||||
name varchar(50) NOT NULL
|
||||
);
|
||||
|
||||
TRUNCATE TABLE transactions;
|
||||
ALTER TABLE transactions ADD COLUMN account_id uuid NOT NULL;
|
||||
ALTER TABLE transactions ADD COLUMN payee_id uuid;
|
||||
|
||||
|
||||
|
||||
ALTER TABLE "user_budgets" ADD FOREIGN KEY ("user_id") REFERENCES "users" ("id");
|
||||
|
||||
ALTER TABLE "user_budgets" ADD FOREIGN KEY ("budget_id") REFERENCES "budgets" ("id");
|
||||
|
||||
ALTER TABLE "transactions" ADD FOREIGN KEY ("account_id") REFERENCES "accounts" ("id");
|
||||
|
||||
ALTER TABLE "accounts" ADD FOREIGN KEY ("budget_id") REFERENCES "budgets" ("id");
|
||||
|
||||
ALTER TABLE "categories" ADD FOREIGN KEY ("budget_id") REFERENCES "budgets" ("id");
|
||||
|
||||
ALTER TABLE "assignments" ADD FOREIGN KEY ("category_id") REFERENCES "categories" ("id");
|
||||
|
||||
-- +goose Down
|
||||
ALTER TABLE transactions DROP COLUMN account_id;
|
||||
ALTER TABLE transactions DROP COLUMN payee_id;
|
||||
|
||||
DROP TABLE accounts;
|
||||
DROP TABLE payees;
|
55
postgres/schema/202112021109_initial.sql
Normal file
55
postgres/schema/202112021109_initial.sql
Normal file
@ -0,0 +1,55 @@
|
||||
-- +goose Up
|
||||
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
|
||||
|
||||
CREATE TABLE budgets (
|
||||
id uuid DEFAULT uuid_generate_v4() PRIMARY KEY,
|
||||
name text NOT NULL,
|
||||
last_modification timestamp with time zone
|
||||
);
|
||||
|
||||
CREATE TABLE users (
|
||||
id uuid DEFAULT uuid_generate_v4() PRIMARY KEY,
|
||||
email text NOT NULL,
|
||||
name text NOT NULL,
|
||||
password text NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE user_budgets (
|
||||
user_id uuid NOT NULL,
|
||||
budget_id uuid NOT NULL
|
||||
);
|
||||
ALTER TABLE "user_budgets" ADD FOREIGN KEY ("user_id") REFERENCES "users" ("id");
|
||||
ALTER TABLE "user_budgets" ADD FOREIGN KEY ("budget_id") REFERENCES "budgets" ("id");
|
||||
|
||||
CREATE TABLE accounts (
|
||||
id uuid DEFAULT uuid_generate_v4() PRIMARY KEY,
|
||||
budget_id uuid NOT NULL,
|
||||
name varchar(50) NOT NULL
|
||||
);
|
||||
ALTER TABLE "accounts" ADD FOREIGN KEY ("budget_id") REFERENCES "budgets" ("id");
|
||||
|
||||
CREATE TABLE payees (
|
||||
id uuid DEFAULT uuid_generate_v4() PRIMARY KEY,
|
||||
budget_id uuid NOT NULL,
|
||||
name varchar(50) NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE transactions (
|
||||
id uuid DEFAULT uuid_generate_v4() PRIMARY KEY,
|
||||
date date NOT NULL,
|
||||
memo text NULL,
|
||||
amount decimal(12,2) NOT NULL,
|
||||
account_id uuid NOT NULL,
|
||||
payee_id uuid
|
||||
);
|
||||
ALTER TABLE "transactions" ADD FOREIGN KEY ("account_id") REFERENCES "accounts" ("id");
|
||||
ALTER TABLE "transactions" ADD FOREIGN KEY ("payee_id") REFERENCES "payees" ("id");
|
||||
|
||||
-- +goose Down
|
||||
DROP EXTENSION "uuid-ossp";
|
||||
DROP TABLE budgets;
|
||||
DROP TABLE users;
|
||||
DROP TABLE user_budgets;
|
||||
DROP TABLE transactions;
|
||||
DROP TABLE accounts;
|
||||
DROP TABLE payees;
|
Reference in New Issue
Block a user