2014-01-31 37 views
2

如果有人指向我將Netezza存儲過程返回值捕獲到變量中的正確方法,我將不勝感激。如何將Netezza存儲過程的返回值捕獲到變量中?

create or replace procedure test() returns varchar(10) language nzplsql as 
begin 
return "success"; 
end; 

,然後像(在另一個程序)

var_name := call test(); 

捕獲 「成功」 爲變量var_name

非常感謝。

回答

0

請在下面找到,其中從第一個過程的返回值被捕獲的第二個步驟2層的程序 -

程序VarunTest -

CREATE OR REPLACE PROCEDURE varunTest() 
LANGUAGE NZPLSQL RETURNS varchar(255) AS 

BEGIN_PROC 

DECLARE 

BEGIN 
     return 'varunTest'; 

END; 


END_PROC; 

創建過程

\i varunTest.sql 

程序BajajTest

CREATE OR REPLACE PROCEDURE bajajTest() 
LANGUAGE NZPLSQL RETURNS varchar(255) AS 

BEGIN_PROC 

DECLARE 
v_test varchar; 

BEGIN 
v_test := varuntest(); 

raise notice 'result => %', v_test; 

END; 


END_PROC; 

創建過程

\i bajajTest.sql 

調用程序流程的

call bajajTest(); 

結果 -

NOTICE: result => varunTest 
BAJAJTEST 
----------- 

(1 row) 

希望這會幫助你。 :)