You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Prisma新增表执行migrate dev遇非交互式环境不支持错误

问题解决:Prisma Migrate 非交互式环境报错

问题场景

在schema.prisma中新增了如下模型:

model REF_DOMAIN_GSTANDARDS {
  Data_Domain_GS String? @db.VarChar(Max) 
  DomainGSID    Int     @id@default(autoincrement()) 
}

执行迁移命令时触发错误:

环境变量已从.env加载
Prisma schema已从prisma\schema.prisma加载
数据源"db": SQL Server数据库

Error: Prisma Migrate has detected that the environment is non-interactive, which is not supported.

prisma migrate dev是用于在开发环境创建新迁移并演进数据库的交互式命令。在部署环境中应用现有迁移,请使用prisma migrate deploy。

原因分析

prisma migrate dev是开发环境专属的交互式命令,它需要终端支持交互操作(比如弹出确认提示让你确认数据库变更)。当你在非交互式环境(如CI/CD流水线、无交互的远程服务器会话、自动化脚本)中执行该命令时,就会触发这个错误。

解决方案

1. 开发环境下的修复

如果你是在本地开发环境操作:

  • 确保你是在本地交互式终端(Windows CMD/PowerShell、Mac/Linux Terminal、IDE支持交互的终端面板)执行命令。
  • 检查终端是否被配置为非交互式模式,恢复为默认的交互式设置即可。

2. 部署/非开发环境下的修复

如果是在生产、测试或部署环境中:

  • 改用非交互式的迁移命令:
    npx prisma migrate deploy
    
    该命令会直接应用已生成的迁移文件,无需交互确认,适合自动化或非交互场景。

额外提示

你的模型代码中有一处语法小问题:@id@default(autoincrement())之间缺少空格,修正为:

model REF_DOMAIN_GSTANDARDS {
  Data_Domain_GS String? @db.VarChar(Max) 
  DomainGSID    Int     @id @default(autoincrement()) 
}

避免后续出现语法解析错误。

内容的提问来源于stack exchange,提问作者Nurul Atirah Binti Ahmad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 15:02:34