如何阻止Prisma自动为表添加关联?VSCode中关联删除后自动恢复
问题:Prisma删除关联后保存自动恢复
在VSCode中使用Prisma与PostgreSQL时,手动删除schema.prisma中的某一关联关系后,保存文件时Prisma会自动重新添加该关联。
可能原因及解决方法
禁用Prisma自动格式化/同步功能
检查VSCode的Prisma插件设置,看看是否开启了自动同步或格式化功能:- 打开VSCode设置(快捷键
Ctrl+,) - 搜索
Prisma相关设置 - 关闭
Format On Save选项,同时确认Prisma: Auto Sync类的选项处于关闭状态
- 打开VSCode设置(快捷键
关闭Prisma Studio同步
如果同时打开了Prisma Studio,它可能会自动将数据库结构同步回schema文件。关闭Prisma Studio后再修改schema,保存后观察是否还会自动恢复关联。清理Prisma缓存
缓存异常可能导致同步问题,执行命令强制重新生成Prisma客户端:npx prisma generate --force完成后重启VSCode,再尝试修改schema文件。
确保数据库中已删除对应关联
若数据库内该关联仍存在,Prisma的自省功能会在保存时把数据库结构同步回schema。先通过SQL或Prisma Studio删除数据库中的关联:-- 示例:删除外键关联 ALTER TABLE "TableName" DROP CONSTRAINT "TableName_columnId_fkey";之后执行
npx prisma db pull同步数据库结构到schema,再进行后续修改。
内容的提问来源于stack exchange,提问作者mxcdh
相关产品推荐
相关产品推荐

