ORACLE SELECT INTO NO_DATA_FOUND問題

風靈使發表於2018-09-27

儲存過程中使用了類似如下語句:

    SELECT col

    INTO v_col

    FROM t_table

當查詢不到記錄時,會出現“資料未發現”的異常

解決方法:

(1)使用MAX函式

    SELECT MAX(col)

    INTO v_col

    FROM t_table

(2) 使用異常處理

    BEGIN

        SELECT col

        INTO v_col

        FROM t_table;

        EXCEPTION WHEN NO_DATA_FOUND THEN
               v_col:=0;

    END;

b number(10);  
c varchar(20);  
begin  
  select age, sex, name into a, b, c from myemp t where t.empno = pno;  
EXCEPTION  
  WHEN NO_DATA_FOUND THEN  
  dbms_output.put_line('捕獲到異常');   
END;

相關文章