我已将查询准备为
await db.runSql(
`PREPARE fetchDashboards (text, text, text) AS SELECT \* FROM dashboards WHERE tenant_id = $1 AND user_id = $2 AND name = $3`,
);
当我尝试执行它时
const dashboardResult = await db.runSql(
'EXECUTE fetchDashboards($1, $2, $3)',
[filter.tenant_id, filter.user_id, filter.dashboard_name],
);
我收到以下错误
迁移过程中出现错误:错误:绑定消息提供 1 个参数,但准备好的语句“”需要 0 个参数 在 Parser.parseErrorMessage (/Users/saaifali/JourneyWithSensys/web/node_modules/.pnpm/[电子邮件受保护]/node_modules/pg-protocol/dist/parser.js:283:98) 在 Parser.handlePacket (/Users/saaifali/JourneyWithSensys/web/node_modules/.pnpm/[电子邮件受保护]/node_modules/pg-protocol/dist/parser.js:122:29) 在 Parser.parse (/Users/saaifali/JourneyWithSensys/web/node_modules/.pnpm/[电子邮件受保护]/node_modules/pg-protocol/dist/parser.js:35:38) 在套接字。
(/Users/saaifali/JourneyWithSensys/web/node_modules/.pnpm/[电子邮件受保护]/node_modules/pg-protocol/dist/index.js:11:42) 在 Socket.emit (节点:事件:519:28) 在 addChunk (节点:内部/流/可读:559:12) 在 ReadAddChunkPushByteMode (节点:内部/流/可读:510:3) 在 Readable.push (节点:内部/流/可读:390:5) 在 TCP.onStreamRead (节点:内部/stream_base_commons:191:23) { 长度:137, 严重性:“错误”, 代码:'08P01', 详细信息:未定义, 提示:未定义, 位置:未定义, 内部位置:未定义, 内部查询:未定义, 其中:未定义, 模式:未定义, 表:未定义, 列:未定义, 数据类型:未定义, 约束:未定义, 文件:'postgres.c', 行:'1724', 例程:'exec_bind_message' }
我做错了什么?任何帮助将不胜感激
唯一可以与参数一起使用的语句是
SELECT
、INSERT
、UPDATE
、DELETE
、MERGE
和 VALUES
。 EXECUTE
不在该列表中,因此出现错误。 EXECUTE
语句必须包含文字参数值。