2010-04-02 90 views
2
CREATE FUNCTION foo() RETURNS text 
    LANGUAGE plperl 
    AS $$ 
     return 'foo'; 
$$; 

CREATE FUNCTION foobar() RETURNS text 
    LANGUAGE plperl 
    AS $$ 
     return foo() . 'bar'; 
$$; 

我試圖用多個函數編寫結果,但是當我打電話給foobar()時,我得到一個空的結果。如何從另一個PL/Perl函數調用PL/Perl函數?

回答

4

documentation

PL/Perl函數不能直接相互調用(因爲它們是內部的Perl匿名子程序)。

的解決方案似乎是要麼調用函數作爲Postgres的功能(使用spi_query),或者你可以把引用您在全球可用的功能哈希%_SHARED如圖here

相關問題