2016-11-13 99 views
0

我知道這已經被問了很多次了,但我的問題似乎並沒有消失。我已經把分隔符放在正確的位置,但我仍然繼續得到錯誤'錯誤(9,1):遇到符號「/」在第9行。如果我沒有弄錯,導致錯誤的分隔符請在那裏。PLS-00103:遇到符號「/」

CREATE OR REPLACE PACKAGE FOR_CLASS_NOV2 AS 

PROCEDURE PRINT_SNAME(S_NO S.SNO%TYPE); 

FUNCTION FIND_MAX_QTY 
RETURN NUMBER; 

END; 
/

CREATE OR REPLACE PACKAGE BODY FOR_CLASS_NOV2 AS 

PROCEDURE PRINT_SNAME(S_NO S.SNO%TYPE) IS 
S_SNAME S.SNAME%TYPE; 

BEGIN 
    SELECT SNAME 
    INTO S_SNAME 
    FROM S 
    WHERE SNO = S_NO; 

    DBMS_OUT.PUT_LINE('SUPPLIER NAME IS: ' || S_NAME); 
END PRINT_SNAME; 

FUNCTION FIND_MAX_QTY() 
RETURN NUMBER IS 

M_QTY NUMBER; 
BEGIN 
    SELECT AX(STY) 
    INTO M_QTY 
    FROM SP; 
    RETURN M_QTY; 
END FIND_MAX_QTY; 

END; 
/
+2

你是如何運行腳本的?您標記了2種不同的客戶端工具,所以這很令人困惑。 – sstan

+0

在對SQLPlus客戶端運行腳本時通常會使用'/'。在使用SQLDeveloper運行時,它不應該在那裏。 –

+0

除了在命令或SQL窗口中(通常不會用於PL/SQL),它不應該用於PL/SQL Developer。 –

回答

0

我想你不應該在沒有參數的情況下在函數中使用括號。

嘗試更換此:

FUNCTION FIND_MAX_QTY() 
RETURN NUMBER IS 

有了這個:

FUNCTION FIND_MAX_QTY 
RETURN NUMBER IS 

而且,你有一個變量命名爲S_SNAME,但你打印S_NAME

相關問題