如何使用@default和degenerated()在prisma中声明数据库默认值?



希望在生成的SQL迁移文件中声明一个默认的二进制值。

我已经尝试使用@default(dbgenerated(“UUID_TO_BIN(uuid())”),但表达式没有在结果SQL文件中实现。

这对我有用:@default(dbgenerated("(UUID_TO_BIN(UUID()))"))

在函数周围增加了一个括号。

schema.prisma文件中的模型将如下所示

model user {
id   Bytes  @default(dbgenerated("(UUID_TO_BIN(UUID()))")) @db.Binary(16)
name String @db.VarChar(100)
}

如果没有提到@db.Binary(16),模式中的默认数据类型将是LONGBLOB

使用SELECT BIN_TO_UUID(id) FROM user查看实际UUID

最新更新