我正在嘗試編寫一個過程,它在表中插入一行,然後返回一個指定的ID。PostgreSQL/PLPGSQL過程,返回變量作爲列
表例如:
CREATE TABLE sometable (
UUID Id,
varchar field1,
varchar field2)
我的功能:
CREATE OR REPLACE FUNCTION insert_sometable(varchar pfield1, varchar pfield2)
RETURNS UUID AS $$
DECLARE
pid UUID;
BEGIN
pid=uuid_generate();
insert into sometable(id, field1, field2) values (pid, pfield1, pfield2);
return pid;
END;
$$
LANGUAGE plpgsql;
,我希望它使用它像:
select pid from insert_sometable('_field1_value', '_field2_value')
但現在我沒有列名的結果,所以我不能在我的ESB服務中訪問它。 我想在結果集中調用「pid」列。 看起來像簡單的任務,但我沒有找到任何簡單的解決方案。有什麼建議麼?
謝謝,pozs。你太快了。 – CaptainFreedom 2014-09-04 10:07:44