解決:identifier 'A' must be declared(標識符必須被公開)

今天偶遇bug identifier ‘A’ must be declared(A是輸入的字符)
看圖
報錯:
在這裏插入圖片描述
雖然圖中還有幾個問題,但是在本問題被解決後都沒了,所以我們就不管它了
類似的原代碼爲

DECLARE
   V_PUT varchar2(50) := &put;
BEGIN 
  IF V_PUT = 'A' THEN
    dbms_output.put_line('啦啦啦');
  ELSIF V_PUT ='B' THEN
    dbms_output.put_line('嘻嘻嘻');
  END IF;
END;

原因: 定義形參使用& ,如果是字符類型需要使用 ’ ’ 引起來,而我這裏並沒有使用單引號把我的形參引起來,所以就報錯了
注:是用英文字符的單引號

解決辦法:
使用 ’ ’ 把自己定義的形參括起來就OK了
解決後的代碼

DECLARE
   V_PUT varchar2(50) := '&put';
BEGIN 
  IF V_PUT = 'A' THEN
    dbms_output.put_line('啦啦啦');
  ELSIF V_PUT ='B' THEN
    dbms_output.put_line('嘻嘻嘻');
  END IF;
END;

更多相關知識,就點我主頁哦,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章