Oracle培訓教程:PL/SQL變量聲明,PL/SQL支持SQL中的數據類型,PL/SQL中正常支持NUMBER,VARCHAR2,DATE等Oracle SQL數據類型。聲明變量必須指明變量的數據類型,也可以聲明變量時對變量初始化,變量聲明必須在聲明部分。聲明變量的語法是:
語法格式:聲明變量
變量名 數據類型[ :=初始值]
語法解析:
數據類型如果需要長度,可以用括號指明長度,比如:varchar2(20)。
代碼演示:聲明變量
SQL> DECLARE 2 sname VARCHAR2(20) :='jerry'; ① 3 BEGIN 4 sname:=sname||' and tom'; ② 5 dbms_output.put_line(sname); ③ 6 END; 7 /jerry PL/SQL procedure successfully completed |
代碼解析:
① 聲明一個變量sname,初始化值是“jerry”。字符串用單引號,如果字符串中出現單引號可以使用兩個單引號(’’)來表示,即單引號同時也具有轉義的作用。
② 對變量sname重新賦值,賦值運算符是“:=”。
③ dbms_output.put_line是輸出語句,可以把一個變量的值輸出,在SQL*Plus中輸出數據時,可能沒有結果顯示,可以使用命令:set serveroutput on設置輸出到SQL*Plus控制檯上。
對變量賦值還可以使用SELECT…INTO 語句從數據庫中查詢數據對變量進行賦值。但是查詢的結果只能是一行記錄,不能是零行或者多行記錄。
代碼演示:變量賦值
SQL> DECLARE 2 sname VARCHAR2(20) DEFAULT 'jerry'; ① 3 BEGIN 4 SELECT ename INTO sname FROM emp WHERE empno=7934; ② 5 dbms_output.put_line(sname); 6 END; 7 / MILLER PL/SQL procedure successfully completed |
代碼解析:
① 變量初始化時,可以使用DEFAULT關鍵字對變量進行初始化。
② 使用select…into語句對變量sname賦值,要求查詢的結果必須是一行,不能是多行或者沒有記錄。
來源:北京Oracle認證