Spaces:
Sleeping
Sleeping
| CREATE TABLE IF NOT EXISTS "chat_message" ( | |
| "id" text PRIMARY KEY NOT NULL, | |
| "thread_id" uuid NOT NULL, | |
| "role" text NOT NULL, | |
| "parts" json[], | |
| "attachments" json[], | |
| "annotations" json[], | |
| "model" text, | |
| "created_at" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL | |
| ); | |
| --> statement-breakpoint | |
| CREATE TABLE IF NOT EXISTS "chat_thread" ( | |
| "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, | |
| "title" text NOT NULL, | |
| "user_id" uuid NOT NULL, | |
| "created_at" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, | |
| "project_id" uuid | |
| ); | |
| --> statement-breakpoint | |
| CREATE TABLE IF NOT EXISTS "project" ( | |
| "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, | |
| "name" text NOT NULL, | |
| "user_id" uuid NOT NULL, | |
| "instructions" json, | |
| "created_at" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, | |
| "updated_at" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL | |
| ); | |
| --> statement-breakpoint | |
| CREATE TABLE IF NOT EXISTS "user" ( | |
| "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, | |
| "name" text NOT NULL, | |
| "email" text NOT NULL, | |
| "password" text NOT NULL, | |
| "image" text, | |
| "created_at" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, | |
| "updated_at" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, | |
| CONSTRAINT "user_email_unique" UNIQUE("email") | |
| ); | |
| --> statement-breakpoint | |
| DO $$ BEGIN | |
| ALTER TABLE "chat_thread" ADD CONSTRAINT "chat_thread_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action; | |
| EXCEPTION | |
| WHEN duplicate_object THEN null; | |
| END $$; | |
| --> statement-breakpoint | |
| DO $$ BEGIN | |
| ALTER TABLE "project" ADD CONSTRAINT "project_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE no action ON UPDATE no action; | |
| EXCEPTION | |
| WHEN duplicate_object THEN null; | |
| END $$; | |
| --> statement-breakpoint | |