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 に答える