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

执行npx prisma db seed命令时出现退出码1错误求助

解决npx prisma db seed执行报错(Exit Code 1)的方案

1. 先获取详细错误信息

当前报错仅提示命令退出码1,无具体原因,直接单独运行seed命令中的ts-node指令,可获取更详细的错误日志:

ts-node --compiler-options {"module":"CommonJS"} prisma/seed.ts

根据输出的具体错误(如语法错误、Prisma客户端初始化失败、数据写入错误等)针对性修复。

2. 优化ts-node的配置方式

当前compiler-options写法在部分shell环境下可能存在解析问题,建议改用单独的tsconfig文件管理配置:

  • 在prisma目录下创建tsconfig.seed.json:
    {
      "compilerOptions": {
        "module": "CommonJS",
        "target": "ES6",
        "strict": true,
        "esModuleInterop": true,
        "skipLibCheck": true
      },
      "include": ["seed.ts"]
    }
    
  • 修改package.json中的prisma seed配置:
    "prisma": {
      "seed": "ts-node --project prisma/tsconfig.seed.json prisma/seed.ts"
    }
    

3. 检查依赖版本兼容性

当前使用的Prisma 3.6.0、TypeScript 4.8.4、ts-node 10.4.0可能存在版本不匹配问题:

  • 尝试降级TypeScript到4.5.x版本(Prisma 3.x系列对TypeScript版本有兼容限制):
    npm install typescript@4.5.5 --save-dev
    
  • 或者升级Prisma到4.x稳定版本(同时更新@prisma/client和prisma依赖):
    npm install prisma@latest @prisma/client@latest --save-dev
    

4. 确保Prisma客户端已正确生成

如果最近修改过Prisma Schema,需重新生成客户端:

npx prisma generate

避免因Schema变更导致seed.ts中导入的PrismaClient与数据库结构不匹配。

5. 检查seed.ts的代码逻辑

  • 确保异步操作都正确使用await,且入口函数被调用并处理错误:
    import { PrismaClient } from '@prisma/client';
    
    const prisma = new PrismaClient();
    
    async function seedDatabase() {
      // 示例:创建测试数据
      await prisma.user.create({
        data: {
          email: 'test@example.com',
          name: 'Test User'
        }
      });
    }
    
    // 执行seed并处理错误
    seedDatabase()
      .catch((error) => {
        console.error('Seed执行失败:', error);
        process.exit(1);
      })
      .finally(async () => {
        await prisma.$disconnect();
      });
    
  • 确认没有未捕获的Promise,否则可能导致ts-node无法正确识别错误并退出。

内容的提问来源于stack exchange,提问作者nattyeth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 05:10:21