-- CreateTable CREATE TABLE "OAuthTransaction" ( "id" TEXT NOT NULL, "state" TEXT NOT NULL, "codeVerifier" TEXT NOT NULL, "redirectTarget" TEXT, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "expiresAt" TIMESTAMP(3) NOT NULL, CONSTRAINT "OAuthTransaction_pkey" PRIMARY KEY ("id") ); -- CreateTable CREATE TABLE "Session" ( "id" TEXT NOT NULL, "sessionId" TEXT NOT NULL, "userId" TEXT NOT NULL, "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP, "expiresAt" TIMESTAMP(3) NOT NULL, CONSTRAINT "Session_pkey" PRIMARY KEY ("id") ); -- CreateIndex CREATE UNIQUE INDEX "OAuthTransaction_state_key" ON "OAuthTransaction"("state"); -- CreateIndex CREATE INDEX "OAuthTransaction_expiresAt_idx" ON "OAuthTransaction"("expiresAt"); -- CreateIndex CREATE UNIQUE INDEX "Session_sessionId_key" ON "Session"("sessionId"); -- CreateIndex CREATE INDEX "Session_expiresAt_idx" ON "Session"("expiresAt"); -- CreateIndex CREATE INDEX "Session_userId_idx" ON "Session"("userId"); -- AddForeignKey ALTER TABLE "Session" ADD CONSTRAINT "Session_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;