# Migration `20201030061957-rejig-schema` This migration has been generated by Kurt Hutten at 10/30/2020, 5:19:57 PM. You can check out the [state of the schema](./schema.prisma) after the migration. ## Database Steps ```sql CREATE TABLE "User" ( "userName" TEXT NOT NULL, "email" TEXT NOT NULL, "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" DATETIME NOT NULL, "image" TEXT, "bio" TEXT, PRIMARY KEY ("userName") ) CREATE TABLE "Part" ( "id" TEXT NOT NULL, "title" TEXT NOT NULL, "description" TEXT, "code" TEXT, "mainImage" TEXT, "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" DATETIME NOT NULL, "authorUserName" TEXT NOT NULL, FOREIGN KEY ("authorUserName") REFERENCES "User"("userName") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("title","authorUserName") ) CREATE TABLE "PartReaction" ( "emote" TEXT NOT NULL, "userId" TEXT NOT NULL, "partId" TEXT NOT NULL, "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" DATETIME NOT NULL, FOREIGN KEY ("userId") REFERENCES "User"("userName") ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY ("partId") REFERENCES "Part"("id") ON DELETE CASCADE ON UPDATE CASCADE ) CREATE TABLE "Comment" ( "id" TEXT NOT NULL, "text" TEXT NOT NULL, "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updatedAt" DATETIME NOT NULL, FOREIGN KEY ("id") REFERENCES "User"("userName") ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY ("id") REFERENCES "Part"("id") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("id") ) CREATE UNIQUE INDEX "User.email_unique" ON "User"("email") CREATE UNIQUE INDEX "Part.id_unique" ON "Part"("id") CREATE UNIQUE INDEX "Part.title_authorUserName_unique" ON "Part"("title", "authorUserName") CREATE UNIQUE INDEX "PartReaction.emote_userId_partId_unique" ON "PartReaction"("emote", "userId", "partId") ``` ## Changes ```diff diff --git schema.prisma schema.prisma migration 20201029214206-rejig-schema..20201030061957-rejig-schema --- datamodel.dml +++ datamodel.dml @@ -1,7 +1,7 @@ datasource DS { provider = ["sqlite", "postgresql"] - url = "***" + url = "***" } generator client { provider = "prisma-client-js" @@ -19,9 +19,9 @@ // JSCAD // } model User { - userName String @id @default(uuid()) + userName String @id email String @unique // role should probably be a list [] and also use enums, neither are supported by sqllight, so we need to set up postgresql in dev // maybe let netlify handle roles for now. // role String @default("user") ```