postgresql - 如何在 schema.prisma 中使 id 自增?

标签 postgresql prisma

我正在编写一个 postgreSQL 数据库。 ID 必须自动递增。

model User {
 id            String    @id @default(cuid())
 name          String?
 email         String?   @unique
 emailVerified DateTime? @map("email_verified")
 image         String?
 createdAt     DateTime  @default(now()) @map(name: "created_at")
 updatedAt     DateTime  @updatedAt @map(name: "updated_at")
 posts         Post[]
 accounts      Account[]
 sessions      Session[]

 @@map(name: "users")
}

Result

如果您手动输入 ID,您可以像在第一个条目中那样输入任何值,但自动完成会像在第二个条目中那样生成代码。我从网站 Vercel 获得了代码.

最佳答案

您需要使用 autoincrement功能。

这是它在 User 模型中的样子:

model User {
 id            Int       @id @default(autoincrement())
 name          String?
 email         String?   @unique
 emailVerified DateTime? @map("email_verified")
 image         String?
 createdAt     DateTime  @default(now()) @map(name: "created_at")
 updatedAt     DateTime  @updatedAt @map(name: "updated_at")
 posts         Post[]
 accounts      Account[]
 sessions      Session[]

 @@map(name: "users")
}

关于postgresql - 如何在 schema.prisma 中使 id 自增?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72583324/

相关文章:

node.js - 续写多对多关系

java - JPA 并发事务

postgresql - 使用 Heroku CLI、Postgres 时出现 SQL 语法错误

node.js - 如何在具有相同表的 Prisma 客户端中检索子查询?

mysql - Prisma 约会减一

graphql - prisma 基于哪个数据库服务器?

prisma - 为棱镜自动生成增量字段

postgresql - 查找不包含在任何范围内的数字

react-apollo - Prisma 2 查询仅返回与所有提供的标签 ID 关联的记录

postgresql - postgresql中从一列中分割数据并插入到另一个表中