Jah*_*han 2 orm node.js express prisma prisma2
我在我的项目中使用 prisma.js 作为 ORM。
\n执行后npx prisma migrate dev --name rename_and_add_some_columns,\n我收到此错误:
\n\n我们发现无法执行的更改
\n
错误详情:
\n\n\n步骤 1 将所需的列添加
\nCategoryId到Post表\n,但没有默认值。该表中有 2 行,\n无法执行此步骤。\xe2\x80\xa2 步骤 1 将所需的列\n 添加ModifiedDate到Post表中,但没有默认值。该表中有\n2 行,无法执行此步骤。\xe2\x80\xa2\n步骤 2 将所需的列添加ModifiedDate到Profile表\n,但没有默认值。该表中有 1 行,\n无法执行此步骤。\xe2\x80\xa2 步骤 4 将所需的列\n 添加ModifiedDate到User表中,但没有默认值。该表中有\n2 行,无法执行此步骤。您可以使用 prisma migrate dev --create-only 创建迁移\n文件,并手动修改它以解决根本问题。然后\n运行 prisma migrate dev 以应用它并验证它是否有效。
\n
我该如何解决?
\n// 这是我的 Prisma 架构文件,
\ndatasource db {\n provider = "mysql"\n url = env("DATABASE_URL")\n}\n\ngenerator client {\n provider = "prisma-client-js"\n}\n\nmodel Category {\n Id Int @id @default(autoincrement())\n CreatedDate DateTime @default(now())\n ModifiedDate DateTime @updatedAt\n Title String @db.VarChar(50)\n IsActive Boolean\n Posts Post[]\n}\n\nmodel Post {\n Id Int @id @default(autoincrement())\n CreatedDate DateTime @default(now())\n ModifiedDate DateTime @updatedAt\n Title String @db.VarChar(255)\n Description String?\n IsPublished Boolean @default(false)\n IsActive Boolean @default(true)\n IsActiveNewComment Boolean @default(true)\n Author User @relation(fields: [AuthorId], references: [Id])\n AuthorId Int\n Comment Comment[]\n Tag Tag[] @relation("TagToPost", fields: [tagId], references: [Id])\n tagId Int?\n Category Category @relation(fields: [CategoryId], references: [Id])\n CategoryId Int\n}\n\nmodel User {\n Id Int @id @default(autoincrement())\n CreatedDate DateTime @default(now())\n ModifiedDate DateTime @updatedAt\n Email String @unique\n Name String?\n Posts Post[]\n Profile Profile?\n Comments Comment[]\n}\n\nmodel Profile {\n Id Int @id @default(autoincrement())\n CreatedDate DateTime @default(now())\n ModifiedDate DateTime @updatedAt\n Bio String?\n User User @relation(fields: [UserId], references: [Id])\n UserId Int @unique\n}\n\nmodel Comment {\n Id Int @id @default(autoincrement())\n CreatedDate DateTime @default(now())\n ModifiedDate DateTime @updatedAt\n Comment String\n WrittenBy User @relation(fields: [WrittenById], references: [Id])\n WrittenById Int\n Post Post @relation(fields: [PostId], references: [Id])\n PostId Int\n}\n\nmodel Tag {\n Id Int @id @default(autoincrement())\n CreatedDate DateTime @default(now())\n ModifiedDate DateTime @updatedAt\n Title String @unique\n Posts Post[] @relation("TagToPost")\n}\nRun Code Online (Sandbox Code Playgroud)\n
Rya*_*yan 14
为了运行此迁移,您需要:
首先创建可选字段,然后运行migrate
首先在字段中填写所需的日期。
?从字段中删除可选的 ( )。
Prisma 会自动添加@updatedAt(不是在数据库级别完成),因此需要遵循这些步骤。
| 归档时间: |
|
| 查看次数: |
11226 次 |
| 最近记录: |