26 lines
967 B
SQL
26 lines
967 B
SQL
-- CreateTable
|
|
CREATE TABLE "AuthSession" (
|
|
"id" TEXT NOT NULL PRIMARY KEY,
|
|
"userId" TEXT NOT NULL,
|
|
"expiresAt" DATETIME NOT NULL,
|
|
"lastSeenAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"ipAddress" TEXT,
|
|
"userAgent" TEXT,
|
|
"revokedAt" DATETIME,
|
|
"revokedById" TEXT,
|
|
"revokedReason" TEXT,
|
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" DATETIME NOT NULL,
|
|
CONSTRAINT "AuthSession_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
|
|
CONSTRAINT "AuthSession_revokedById_fkey" FOREIGN KEY ("revokedById") REFERENCES "User" ("id") ON DELETE SET NULL ON UPDATE CASCADE
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "AuthSession_userId_createdAt_idx" ON "AuthSession"("userId", "createdAt");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "AuthSession_expiresAt_idx" ON "AuthSession"("expiresAt");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "AuthSession_revokedAt_idx" ON "AuthSession"("revokedAt");
|