変数のカテゴリー
図1に示すように、共通データ型(CHAR、VARCHAR2、日付、数値、ブール値、ロング)
図2に示すように、変数(参照変数、レコード変数)の特別な種類
宣言的
例えば、変数名、変数タイプ(可変長):アドレスVARCHAR2(200)。
1.1通常の変数
変数代入
、直接代入:=例えば年齢= 20。
B、代入文、割り当てに...選択し;(変数に文法選択値)
DECLARE - 名前 v_name VARCHAR2(20):= ' zhangsan ' ; - 給与 v_salの数; - アドレス V ADDR VARCHAR2(200 ); 始める - 直接割り当て v_sal:= 20000 ; SELECT ' 北京' INTOのV ADDR からデュアル。 - バリアブルプリント (DBMS_OUTPUT.PUT_LINEを' 名:' || v_name|| ' 給与:' || v_sal || ' 住所:' || Vのaddr); エンド ;
1.2、基準変数(表のタイプと長さフィールドに応じた可変長のタイプ)
よる。%のTYPEテーブルの列名例えば指定された変数の種類と長さ:v_name EMP.ENAME%の入力】
DECLARE - 名前 v_name EMP.ENAME % TYPE:= ' zhangsan ' ; - 給与 v_sal emp.sal %TYPE; 始める - ルックアップテーブル名を、変数給与とに割り当てられた SELECT ENAME、SAL INTOの v_name、v_sal から EMP WHEREを EMPNO = 7839 ; - 変数印刷 DBMS_OUTPUT.PUT_LINEを(' 名前:' || v_name || ' 給与:' || v_sal); エンド ;
1.3、レコード変数(テーブルの行を受信します)
構文:変数名がROWTYPE%の時計例えば、:v_empのemp%のROWTYPE;
DECLARE - レコードの変数 v_emp EMPの%のROWTYPE; 始める - 直接代入 SELECTを * INTO v_emp から EMP EMPNO = 7839 ; - 変数印刷 DBMS_OUTPUT.PUT_LINE(' 名前:' || v_emp.ename || " 、給与を:「|| v_emp.sal); エンド ;