2017-04-17 52 views
-5

我寫了這個簡單的代碼:VALUE不存在(SQL)


DECLARE 

    Y NUMBER; 
    B EMP.ENAME%TYPE; 

BEGIN 

    Y :=:ENTER_NO; 

    SELECT ENAME INTO B 
    FROM EMP 
    WHERE EMPNO = Y; 

    DBMS_OUTPUT.PUT_LINE(B) ; 

END; 

而且此代碼的​​工作好,但我怎麼能當用戶在未發現了一些打印的消息數據庫?

+3

不需要。 – jarlh

+0

這裏沒有必要SHOUT。 –

回答

0

您可以使用例外。試試這個:

DECLARE 
    y NUMBER; 
    b emp.ename%TYPE; 
BEGIN 
    y := :enter_no; 
    SELECT ename INTO b 
     FROM emp 
     WHERE empno = y; 

EXCEPTION 
    WHEN NO_DATA_FOUND THEN 
     DBMS_OUTPUT.PUT_LINE(b); 
END; 
+0

是的工作,非常感謝我的兄弟。 –