我一直试图让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语句可以正常工作。
出了什么问题?