Max Richter
15ff1cc52d
All checks were successful
Deploy to GitHub Pages / build_site (push) Successful in 2m4s
25 lines
1.2 KiB
SQL
25 lines
1.2 KiB
SQL
CREATE TABLE "users" (
|
|
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
|
|
"name" text NOT NULL,
|
|
CONSTRAINT "users_name_unique" UNIQUE("name")
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "nodes" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"userId" varchar NOT NULL,
|
|
"createdAt" timestamp DEFAULT now(),
|
|
"systemId" varchar NOT NULL,
|
|
"nodeId" varchar NOT NULL,
|
|
"content" "bytea" NOT NULL,
|
|
"definition" json NOT NULL,
|
|
"hash" varchar(16) NOT NULL,
|
|
"previous" varchar(16),
|
|
CONSTRAINT "nodes_hash_unique" UNIQUE("hash")
|
|
);
|
|
--> statement-breakpoint
|
|
ALTER TABLE "nodes" ADD CONSTRAINT "nodes_userId_users_name_fk" FOREIGN KEY ("userId") REFERENCES "public"."users"("name") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "nodes" ADD CONSTRAINT "node_previous_fk" FOREIGN KEY ("previous") REFERENCES "public"."nodes"("hash") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
CREATE INDEX "user_id_idx" ON "nodes" USING btree ("userId");--> statement-breakpoint
|
|
CREATE INDEX "system_id_idx" ON "nodes" USING btree ("systemId");--> statement-breakpoint
|
|
CREATE INDEX "node_id_idx" ON "nodes" USING btree ("nodeId");--> statement-breakpoint
|
|
CREATE INDEX "hash_idx" ON "nodes" USING btree ("hash"); |