用plv8打破参数化查询

时间:2018-02-05 17:34:52

标签: postgresql plv8

我一直试图让plv8在PostgreSQL 10上运行(完全干净的安装,从未使用过它)。我已经创建了这样的函数:

CREATE OR REPLACE FUNCTION FindActivitiesJS(_id integer)
  RETURNS Text AS
  $BODY$
  var queryResult = plv8.execute('SELECT * FROM activities WHERE activityid = $1', [_id]);
  return JSON.stringify(queryResult);
  $BODY$
  LANGUAGE plv8 VOLATILE;

当我跑步时:

select * from findactivitiesjs(3)

我明白了:

  

错误:错误:没有参数$ 0 DETAIL:findactivitiesjs()   第2行:var queryResult = plv8.execute(' SELECT * FROM活动   WHERE activityid = SQL状态:XX000

我还尝试将SQL查询更改为SELECT * FROM activities WHERE activityid = $0但结果相同。它是关于查询参数的一些东西,因为没有WHERE子句的SELECT语句可以正常工作。

出了什么问题?

0 个答案:

没有答案