如何使用Prisma将图片存储到PostgreSQL数据库?
在Prisma Schema中实现二进制图片存储
对应你Java中用@Lob注解存储byte[]类型图片的需求,Prisma Schema里可以直接使用Bytes类型来定义字段,具体实现如下:
1. 定义Prisma模型
model Entity { id Int @id @default(autoincrement()) // 用Bytes类型对应Java中的byte[],等价于@Lob的二进制存储 image Bytes? // 可选字段,可根据需求调整是否保留? // 其他字段... }
2. 数据写入说明
当你需要存储MultipartFile时,只需将其转换为对应语言的二进制类型即可:
- 如果使用Node.js/TypeScript:将文件转为
Buffer类型,直接传入Prisma Client的创建/更新方法 - 如果使用Java版Prisma Client:直接使用
byte[]类型(和你之前用.getBytes()得到的数组一致),Prisma会自动处理存储逻辑
Bytes类型在底层会根据你使用的数据库自动适配对应的大二进制存储类型(比如PostgreSQL的bytea、MySQL的BLOB等),和Java中@Lob注解的作用完全匹配。
内容的提问来源于stack exchange,提问作者lambadeltaz
相关产品推荐
相关产品推荐

