migration.sql 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. /*
  2. Warnings:
  3. - You are about to drop the `Plan` table. If the table is not empty, all the data it contains will be lost.
  4. - You are about to drop the `PlanVariant` table. If the table is not empty, all the data it contains will be lost.
  5. - You are about to drop the `Subscription` table. If the table is not empty, all the data it contains will be lost.
  6. */
  7. -- DropForeignKey
  8. ALTER TABLE "PlanVariant" DROP CONSTRAINT "PlanVariant_planId_fkey";
  9. -- DropForeignKey
  10. ALTER TABLE "Subscription" DROP CONSTRAINT "Subscription_planVariantId_fkey";
  11. -- DropForeignKey
  12. ALTER TABLE "Subscription" DROP CONSTRAINT "Subscription_userId_fkey";
  13. -- DropTable
  14. DROP TABLE "Plan";
  15. -- DropTable
  16. DROP TABLE "PlanVariant";
  17. -- DropTable
  18. DROP TABLE "Subscription";
  19. -- CreateTable
  20. CREATE TABLE "plan" (
  21. "id" TEXT NOT NULL,
  22. "name" TEXT NOT NULL,
  23. "description" TEXT,
  24. "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
  25. CONSTRAINT "plan_pkey" PRIMARY KEY ("id")
  26. );
  27. -- CreateTable
  28. CREATE TABLE "plan_variant" (
  29. "id" TEXT NOT NULL,
  30. "label" TEXT NOT NULL,
  31. "planId" TEXT NOT NULL,
  32. "stripePriceId" TEXT NOT NULL,
  33. "description" TEXT,
  34. "isActive" BOOLEAN NOT NULL DEFAULT true,
  35. "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
  36. CONSTRAINT "plan_variant_pkey" PRIMARY KEY ("id")
  37. );
  38. -- CreateTable
  39. CREATE TABLE "subscription" (
  40. "id" TEXT NOT NULL,
  41. "userId" TEXT NOT NULL,
  42. "planVariantId" TEXT NOT NULL,
  43. "stripeCustomerId" TEXT NOT NULL,
  44. "stripeSubId" TEXT NOT NULL,
  45. "status" TEXT NOT NULL,
  46. "currentPeriodEnd" TIMESTAMP(3) NOT NULL,
  47. "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
  48. "updatedAt" TIMESTAMP(3) NOT NULL,
  49. CONSTRAINT "subscription_pkey" PRIMARY KEY ("id")
  50. );
  51. -- CreateIndex
  52. CREATE UNIQUE INDEX "subscription_userId_key" ON "subscription"("userId");
  53. -- AddForeignKey
  54. ALTER TABLE "plan_variant" ADD CONSTRAINT "plan_variant_planId_fkey" FOREIGN KEY ("planId") REFERENCES "plan"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
  55. -- AddForeignKey
  56. ALTER TABLE "subscription" ADD CONSTRAINT "subscription_userId_fkey" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE CASCADE;
  57. -- AddForeignKey
  58. ALTER TABLE "subscription" ADD CONSTRAINT "subscription_planVariantId_fkey" FOREIGN KEY ("planVariantId") REFERENCES "plan_variant"("id") ON DELETE RESTRICT ON UPDATE CASCADE;