29 lines
1.3 KiB
MySQL
29 lines
1.3 KiB
MySQL
|
|
CREATE TABLE "document_versions" (
|
||
|
|
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
|
||
|
|
"document_id" uuid NOT NULL,
|
||
|
|
"version_number" integer NOT NULL,
|
||
|
|
"client_version_id" text,
|
||
|
|
"content_hash" text NOT NULL,
|
||
|
|
"message" text,
|
||
|
|
"fields" jsonb,
|
||
|
|
"template_id" text,
|
||
|
|
"file_name" text,
|
||
|
|
"docx_object_key" text NOT NULL,
|
||
|
|
"pdf_object_key" text,
|
||
|
|
"docx_size" integer NOT NULL,
|
||
|
|
"pdf_size" integer,
|
||
|
|
"user_id" text NOT NULL,
|
||
|
|
"user_name" text NOT NULL,
|
||
|
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL
|
||
|
|
);
|
||
|
|
--> statement-breakpoint
|
||
|
|
CREATE TABLE "documents" (
|
||
|
|
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
|
||
|
|
"doc_id" text NOT NULL,
|
||
|
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL
|
||
|
|
);
|
||
|
|
--> statement-breakpoint
|
||
|
|
ALTER TABLE "document_versions" ADD CONSTRAINT "document_versions_document_id_documents_id_fk" FOREIGN KEY ("document_id") REFERENCES "public"."documents"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
||
|
|
CREATE UNIQUE INDEX "document_versions_document_number_key" ON "document_versions" USING btree ("document_id","version_number");--> statement-breakpoint
|
||
|
|
CREATE INDEX "document_versions_document_created_idx" ON "document_versions" USING btree ("document_id","created_at");--> statement-breakpoint
|
||
|
|
CREATE UNIQUE INDEX "documents_doc_id_key" ON "documents" USING btree ("doc_id");
|