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

Prisma原生查询返回数字而非查询结果问题求助

解决Prisma原生查询返回数值而非查询结果的问题

你遇到的问题根源是用错了Prisma的原生查询方法:

  • $executeRaw 仅适用于执行无结果集返回的SQL操作(比如INSERT、UPDATE、DELETE),它返回的是操作影响的行数,所以你得到的数值1代表查询匹配了1行,但该方法不会返回行数据本身。
  • 执行SELECT查询需要使用$queryRaw,它专门用于获取查询结果集。

修改后的代码:

const jobs = await this.prisma.$queryRaw`
SELECT
  name
 FROM 
  jobs 
 WHERE 
  status = 'ACTIVE'`;

如果需要类型安全的返回结果,可以结合Prisma生成的类型:

import { Prisma } from '@prisma/client';

const jobs = await this.prisma.$queryRaw<Prisma.JobSelect[]>`
SELECT
  name
 FROM 
  jobs 
 WHERE 
  status = 'ACTIVE'`;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 14:59:51