2013-05-29 29 views
-2

我無法編譯。我不知道是什麼問題。請幫助。警告:使用編譯錯誤創建的過程

CREATE OR REPLACE PROCEDURE VERIFY 

    IS 
    LNO DRIVER.L#%TYPE; 

    BEGIN 
     SELECT L# INTO LNO 
     FROM ADMIN JOIN DRIVER 
     ON ADMIN.E# = DRIVER.E#(+); 

     IF LNO != NULL THEN 
      DBMS_OUTPUT.PUT_LINE("NOT NULL"); 
     END IF; 

    COMMIT; 

    END VERIFY; 
+0

以供將來參考:'SHOW ERRORS' –

+1

順便說一句,在LNO != NULL條件將不會被滿足。你應該做的檢查是'LNO不是NULL' – Sathya

回答

1

嘗試這樣的:

DBMS_OUTPUT.PUT_LINE('NOT NULL'); 

代替

DBMS_OUTPUT.PUT_LINE("NOT NULL"); 

(即單引號)

+0

同樣的錯誤... 顯示錯誤輸出 –

+0

LINE/COL ERROR -------------------- --------------------------------------------- 1/82 PLS -00103:在遇到以下 之一時遇到符號「DRIVER」: ,;對於具有相交負號開始聯盟的組,其中 連接 –

+0

PROCEDURE VERIFYIS的錯誤: LINE/COL ERROR -------------------------- --------------------------------------- 1/21 PLS-00103:遇到符號「LNO」期待以下的 之一時: (;與AUTHID簇壓縮順序使用編譯 包裹外部確定性parallel_enable流水線 RESULT_CACHE 符號「(」被取代「LNO」繼續 1/39 PLS-00103:遇到以下 之一時遇到符號「;」: :=),默認字符 –