2017-12-02 5 views
0

ここでコンパイル私の手順コード、手順が成功し

CREATE OR REPLACE Procedure SP_CUSTOMER_PRODUCT_QRY 
    (PARENT_PARTYID IN varchar2 
    , PRODUCT_ID  IN varchar2 
    , PRODUCT_STATUS IN varchar2 
    , PAGING   IN varchar2 
    , OFFSET   IN varchar2 
    , LIST_OF_PARTIES OUT VARCHAR2) 
AS 
V_SQL_WHERE varchar2(10000):= null; 
V_SQL varchar2(10000) :='SELECT PARTYID INTO LIST_OF_PARTIES FROM TABLE1'; 
    V_check varchar2(10000) := '' ; 
BEGIN 

    IF(PARENT_PARTYID IS NOT NULL) THEN 
     V_SQL_WHERE := V_SQL_WHERE || ' PARENT_PARTYID='||PARENT_PARTYID; 
    END IF; 

    IF(PRODUCT_ID IS NOT NULL) THEN 

     IF (V_SQL_WHERE is not null) THEN 
     V_SQL_WHERE := V_SQL_WHERE || ' AND '; 
     END IF; 

     V_SQL_WHERE := V_SQL_WHERE || ' PRODUCT_ID='||PRODUCT_ID; 
    END IF; 

    IF(PRODUCT_STATUS IS NOT NULL) THEN 

     IF (V_SQL_WHERE is not null) THEN 
     V_SQL_WHERE := V_SQL_WHERE || ' AND '; 
     END IF; 
     V_SQL_WHERE := V_SQL_WHERE || ' PRODUCT_STATUS=' || PRODUCT_STATUS; 

    END IF; 

    IF (V_SQL_WHERE is not null) then 
     V_SQL := V_SQL || ' WHERE ' || V_SQL_WHERE; 
    end if; 


    dbms_output.put_line(V_SQL); 
     EXECUTE IMMEDIATE V_SQL; 
    EXCEPTION 
    WHEN NO_DATA_FOUND THEN 
     V_check:= '' ; 
    END; 

、私は JDBCエラーが報告された取得しています手順に

を起動しようとしています。(SQLSTATE = 42000) - java.sqlの.SQLException:ORA-00905:欠落しているキーワード ORA-06512: "DK2.SP_CUSTOMER_PRODUCT_QRY" で、ラインの問題が解決37

+0

私が渡しmが入力中だっただけPARENT_PARTY_ID –

+0

こんにちはダルシャンです。 37行目のコードは何ですか。あなたの例では行番号が表示されません。 – wieseman

答えて

0

EXECUTE IMMEDIATE V_SQLをLIST_OF_PARTIESに挿入します。 into句

は、以前のSQL文の