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

使用Nuxt、Prisma、Supabase执行迁移状态查询时遇错误

解决Prisma + Supabase执行prisma migrate status时"prepared statement 's0' does not exist"错误

以下是针对该错误的几种有效解决方法:

  • 切换到Supabase直接数据库连接
    你当前使用的是Supabase的连接池地址(端口6543),这可能和Prisma的schema引擎的准备语句机制冲突。修改.env中的DATABASE_URL:
    将aws-0-ap-southeast-1.pooler.supabase.com:6543替换为aws-0-ap-southeast-1.supabase.co:5432,使用标准PostgreSQL端口直接连接数据库,而非连接池。

  • 升级Prisma到最新版本
    旧版本Prisma与Supabase连接池的兼容性存在问题,执行以下命令升级核心包和客户端:

    npm install prisma@latest
    npm install @prisma/client@latest
    

    升级后重新执行npx prisma migrate status验证。

  • 强制重置Prisma客户端缓存
    缓存的schema引擎文件可能导致异常,强制重新生成客户端:

    npx prisma generate --force
    

    完成后再次运行迁移状态查询命令。

  • 检查并修复数据库用户权限
    确保你的数据库用户拥有足够权限操作Prisma迁移表和执行准备语句:
    在Supabase Studio的SQL编辑器中执行以下语句(替换your_database_user为你的实际用户名):

    GRANT SELECT ON _prisma_migrations TO your_database_user;
    GRANT EXECUTE ON FUNCTION pg_prepare(text, text, text[]) TO your_database_user;
    

    权限更新后重试命令。

完成上述操作后,重新执行npx prisma migrate status,应该会正常输出Your database is now in sync with your schema.。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 05:02:18