2012-07-27 42 views
0

由於我的C++ OCI包裝器僅支持綁定Int/Double/String/Clob類型的數據。所以我想知道是否有可能讓我的存儲過程返回一個clob,它保存來自SELECT語句的結果集。PL/SQL是否可以將選擇結果集保存爲clob

像:

FUNCTION sp(
    in_param VARCHAR2, 
) RETURN CLOB 
    IS 
    my_clob CLOB; 
    BEGIN 

     my_clob := SELECT col1, col2, col3 FROM s WHERE s.param = in_param; 
    RETURN my_clob; 

    END sp; 

回答

0

我有一個表與CLOB和和VARCHAR列,這個工程:

create or replace 
    FUNCTION F_LOB_TEST(in_char VARCHAR2) RETURN CLOB 
    IS 
    my_clob CLOB; 
    BEGIN 
    SELECT FIELD_CLOB 
    INTO my_clob 
    FROM LOB_TEST 
    WHERE FIELD_CHAR=in_char; 

    RETURN my_clob; 

    END; 

爲了確保該函數返回你在PL期待什麼/ SQL 你可以這樣調用上面的函數:

select F_LOB_TEST('A') FROM DUAL; 
+0

我需要結果集(所有列)被轉出,n不管它是否是clob柱,都無關緊要。 SELECT INTO可能只適用於一列。 – Stan 2012-07-27 16:36:25

相關問題