0

在这个(非常简洁的)查询中,如何从 RETURNING 返回 myfile_key?

CREATE OR REPLACE FUNCTION myfunction (src int, OUT result int) AS $$

plan = plpy.prepare("INSERT INTO myfile VALUES (nextval('seq_myfile'),$1,$2)
RETURNING myfile_key", ["integer","integer"] )

$$ LANGUAGE plpythonu;

(插入的第一个字段是 myfile_key)

该代码不会将值返回到输出,并且无法将其作为标准 python 结果进行查询,如下所示:

result = rv[0]["myfile_key"] 
4

1 回答 1

0

plpy.execute我假设您的代码中有一个缺少的调用。您原则上有权RETURNING访问rv[0]["myfile_key"]. 不工作的是OUT在 PL/Python 中对参数的赋值。我建议您OUT使用普通return语句重写不带参数的函数。

于 2011-08-06T07:59:32.917 回答