Migrate from Prisma to Drizzle ORM
Co-Authored-By: Oz <oz-agent@warp.dev>
This commit is contained in:
71
drizzle/0000_common_mole_man.sql
Normal file
71
drizzle/0000_common_mole_man.sql
Normal file
@@ -0,0 +1,71 @@
|
||||
CREATE TABLE "categories" (
|
||||
"id" integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY (sequence name "categories_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"externalId" integer,
|
||||
"name" varchar(255) NOT NULL,
|
||||
"parentId" integer,
|
||||
"description" text,
|
||||
"createdAt" timestamp DEFAULT now() NOT NULL,
|
||||
"updatedAt" timestamp DEFAULT now()
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "products" (
|
||||
"id" integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY (sequence name "products_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"externalId" varchar(50) NOT NULL,
|
||||
"storeId" integer NOT NULL,
|
||||
"categoryId" integer,
|
||||
"name" varchar(500) NOT NULL,
|
||||
"description" text,
|
||||
"url" text,
|
||||
"imageUrl" text,
|
||||
"currentPrice" numeric(10, 2) NOT NULL,
|
||||
"unit" varchar(50),
|
||||
"weight" varchar(100),
|
||||
"brand" varchar(255),
|
||||
"oldPrice" numeric(10, 2),
|
||||
"discountPercent" numeric(5, 2),
|
||||
"promotionEndDate" timestamp,
|
||||
"rating" numeric(3, 2),
|
||||
"scoresCount" integer,
|
||||
"commentsCount" integer,
|
||||
"quantity" integer,
|
||||
"badges" text,
|
||||
"isDetailsFetched" boolean DEFAULT false NOT NULL,
|
||||
"createdAt" timestamp DEFAULT now() NOT NULL,
|
||||
"updatedAt" timestamp DEFAULT now(),
|
||||
CONSTRAINT "products_externalId_storeId_unique" UNIQUE("externalId","storeId")
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "scraping_sessions" (
|
||||
"id" integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY (sequence name "scraping_sessions_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"storeId" integer NOT NULL,
|
||||
"sourceType" varchar(50) NOT NULL,
|
||||
"status" varchar(50) NOT NULL,
|
||||
"startedAt" timestamp DEFAULT now() NOT NULL,
|
||||
"finishedAt" timestamp,
|
||||
"error" text
|
||||
);
|
||||
--> statement-breakpoint
|
||||
CREATE TABLE "stores" (
|
||||
"id" integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY (sequence name "stores_id_seq" INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 START WITH 1 CACHE 1),
|
||||
"name" varchar(255) NOT NULL,
|
||||
"type" varchar(50) NOT NULL,
|
||||
"code" varchar(50),
|
||||
"url" text,
|
||||
"region" varchar(255),
|
||||
"address" text,
|
||||
"createdAt" timestamp DEFAULT now() NOT NULL,
|
||||
"updatedAt" timestamp DEFAULT now()
|
||||
);
|
||||
--> statement-breakpoint
|
||||
ALTER TABLE "products" ADD CONSTRAINT "products_storeId_stores_id_fk" FOREIGN KEY ("storeId") REFERENCES "public"."stores"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "products" ADD CONSTRAINT "products_categoryId_categories_id_fk" FOREIGN KEY ("categoryId") REFERENCES "public"."categories"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
ALTER TABLE "scraping_sessions" ADD CONSTRAINT "scraping_sessions_storeId_stores_id_fk" FOREIGN KEY ("storeId") REFERENCES "public"."stores"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
||||
CREATE INDEX "categories_externalId_idx" ON "categories" USING btree ("externalId");--> statement-breakpoint
|
||||
CREATE INDEX "categories_parentId_idx" ON "categories" USING btree ("parentId");--> statement-breakpoint
|
||||
CREATE INDEX "products_storeId_idx" ON "products" USING btree ("storeId");--> statement-breakpoint
|
||||
CREATE INDEX "products_categoryId_idx" ON "products" USING btree ("categoryId");--> statement-breakpoint
|
||||
CREATE INDEX "products_externalId_idx" ON "products" USING btree ("externalId");--> statement-breakpoint
|
||||
CREATE INDEX "scraping_sessions_storeId_idx" ON "scraping_sessions" USING btree ("storeId");--> statement-breakpoint
|
||||
CREATE INDEX "scraping_sessions_status_idx" ON "scraping_sessions" USING btree ("status");--> statement-breakpoint
|
||||
CREATE INDEX "scraping_sessions_startedAt_idx" ON "scraping_sessions" USING btree ("startedAt");--> statement-breakpoint
|
||||
CREATE INDEX "stores_code_idx" ON "stores" USING btree ("code");
|
||||
Reference in New Issue
Block a user