使用最新版Prisma+MySQL仍报原始类型列表不支持错误求助
解决Prisma + MySQL中"Field can't be a list"错误
首先明确:MySQL没有原生数组类型,Prisma对MySQL的原始类型列表支持是通过JSON字段模拟实现的,必须显式声明存储类型。
修改你的Prisma模型,给
images字段添加@db.Json注解:
model Gigs { id Int @id @default(autoincrement()) images String[] @db.Json // 关键:用JSON存储字符串列表 // 其他字段定义... }
- 执行以下命令更新客户端和数据库结构:
npx prisma generate npx prisma migrate dev
- 如果之前已经创建过错误的数据库字段(比如非JSON类型),需要确保迁移文件将字段类型修改为
JSON(MySQL中对应json类型)。
注意:虽然Prisma文档标注支持MySQL的列表原始类型,但本质是依赖JSON字段存储,必须显式加上@db.Json注解,否则连接器会判定不支持列表类型。
内容的提问来源于stack exchange,提问作者Rahul Varma
相关产品推荐
相关产品推荐

