-- -- Generated by basebox compiler (bbc) version 0.1.0-beta.23 at 2023-10-30 16:54:43+01:00 -- CREATE EXTENSION IF NOT EXISTS pgcrypto; CREATE TABLE "List" ( "id" UUID DEFAULT gen_random_uuid() NOT NULL, "title" VARCHAR NOT NULL, "user_username" VARCHAR NOT NULL ); CREATE TABLE "Task" ( "id" UUID DEFAULT gen_random_uuid() NOT NULL, "title" VARCHAR NOT NULL, "description" VARCHAR, "completed" BOOLEAN NOT NULL, "user_username" VARCHAR NOT NULL, "list_id" UUID NOT NULL ); CREATE TABLE "User" ( "username" VARCHAR NOT NULL, "name" VARCHAR ); ALTER TABLE "List" ADD PRIMARY KEY ("id"); ALTER TABLE "Task" ADD PRIMARY KEY ("id"); ALTER TABLE "User" ADD PRIMARY KEY ("username"); ALTER TABLE "List" ADD CONSTRAINT fk_list_1 FOREIGN KEY ("user_username") REFERENCES "User" ("username"); ALTER TABLE "Task" ADD CONSTRAINT fk_task_2 FOREIGN KEY ("user_username") REFERENCES "User" ("username"); ALTER TABLE "Task" ADD CONSTRAINT fk_task_3 FOREIGN KEY ("list_id") REFERENCES "List" ("id"); ALTER TABLE "User" ADD CONSTRAINT uq_user_4 UNIQUE (".ownerId"); ALTER TABLE "List" ADD COLUMN ".ownerId" VARCHAR NOT NULL; ALTER TABLE "Task" ADD COLUMN ".ownerId" VARCHAR NOT NULL; ALTER TABLE "User" ADD COLUMN ".ownerId" VARCHAR NOT NULL;