首页 > 解决方案 > Oracle P_cursor 到 V_cursor 空表

问题描述

我想运行过滤器,但使用 2 个包,因为两者都在 aspx 中获得不同形式的输入

所以我有这段代码,当我在 Toad Oracle 上运行它时,它说错误我想我知道错误的来源是 V_cursor,因为我不知道如何将 V_cursor 存储在空表上

你们能帮帮我吗?

CREATE OR REPLACE PACKAGE BODY GIA.Package_AUTOCOMPLETE IS

procedure get_model
    (      
       P_STRINGMODEL            IN  VARCHAR2
       ,P_STRINGMERK            IN  VARCHAR2          
       ,p_CURSOR                OUT Types.ref_cursor
       ,p_STATUS                OUT VARCHAR2
       ,p_ERROR_MESSAGE         OUT VARCHAR2   
    )
is
BEGIN
 PACKAGE_AUTOCOMPLETE.GET_MERK
            (
            P_STRINGMERK        
           ,V_CURSOR              
           ,p_STATUS            
           ,p_ERROR_MESSAGE     
            )

Open P_CURSOR FOR
select * from V_CURSOR
WHERE V_CURSOR.MODEL_NAME = P_STRINGMODEL
       
        
        ;
       
        p_status := '1';
        p_error_message := 'ok';
EXCEPTION
            WHEN OTHERS THEN
                p_status := '0';
                p_error_message := SUBSTR(SQLERRM, 1, 100);

    END get_model;

procedure get_merk
    (     
       P_STRINGMERK         IN VARCHAR2
       ,p_CURSOR                OUT Types.ref_cursor
       ,p_STATUS                OUT VARCHAR2
       ,p_ERROR_MESSAGE         OUT VARCHAR2   
    )
is
BEGIN
        open        p_cursor for
        SELECT MERK_ID, MERK_NAME, TYPE_NAME, MODEL_NAME, MODEL_DESC  
        FROM TABLE_MERK_MODEL
            WHERE MERK_ID=P_STRINGMERK
        ;
       
        p_status := '1';
        p_error_message := 'ok';
EXCEPTION
            WHEN OTHERS THEN
                p_status := '0';
                p_error_message := SUBSTR(SQLERRM, 1, 100);

    END get_merk;

end package_AUTOCOMPLETE ;
/

标签: oracletoad

解决方案


推荐阅读