chatbot-template/lib/db/migrations/0001_even_baron_strucker.sql

38 lines
1.3 KiB
MySQL
Raw Normal View History

CREATE TABLE IF NOT EXISTS "Subscription" (
"userId" uuid PRIMARY KEY NOT NULL,
"tier" varchar DEFAULT 'free' NOT NULL,
"status" varchar DEFAULT 'active' NOT NULL,
"stripeCustomerId" text,
"stripeSubscriptionId" text,
"currentPeriodEnd" timestamp,
"createdAt" timestamp DEFAULT now() NOT NULL,
"updatedAt" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE IF NOT EXISTS "Usage" (
"userId" uuid NOT NULL,
"periodKey" varchar(10) NOT NULL,
"messageCount" integer DEFAULT 0 NOT NULL,
"toolCallCount" integer DEFAULT 0 NOT NULL,
"updatedAt" timestamp DEFAULT now() NOT NULL,
CONSTRAINT "Usage_userId_periodKey_pk" PRIMARY KEY("userId","periodKey")
);
--> statement-breakpoint
CREATE TABLE IF NOT EXISTS "WebhookEvent" (
"id" text PRIMARY KEY NOT NULL,
"type" text NOT NULL,
"receivedAt" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
DO $$ BEGIN
ALTER TABLE "Subscription" ADD CONSTRAINT "Subscription_userId_User_id_fk" FOREIGN KEY ("userId") 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 "Usage" ADD CONSTRAINT "Usage_userId_User_id_fk" FOREIGN KEY ("userId") REFERENCES "public"."User"("id") ON DELETE no action ON UPDATE no action;
EXCEPTION
WHEN duplicate_object THEN null;
END $$;