DECLARE
BEGIN
SYS.DBMS_OUTPUT.PUT_LINE('Hello World');
END;
今回は「Hello World」を変数に代入して、出力します。
変数はDECLARE部で「変数名 変数型」の形式で宣言します。
変数への値の代入は「変数 := 代入する値」で行います。
DECLARE
--DECLARE部で変数の宣言を行う
str VARCHAR2(20);
BEGIN
--変数へ値の代入は「変数 := 代入する値」
str := 'Hello World 2';
SYS.DBMS_OUTPUT.PUT_LINE(str);
END;
宣言と同時に初期値を設定することも可能です。初期値を設定しない場合は、変数の値はnullになります。
DECLARE
--宣言と同時に初期値設定
str VARCHAR2(50) := 'Default Hello World';
BEGIN
SYS.DBMS_OUTPUT.PUT_LINE(str);
END;
変数にNOT NULL制約を指定することも可能です。変数は初期値を設定しなければ値はnullなので、NOT NULL制約を指定する場合は初期値も同時に設定する必要があります。
DECLARE
--NOT NULL制約を指定
str VARCHAR2(50) NOT NULL := 'Default Hello World Not Null';
BEGIN
SYS.DBMS_OUTPUT.PUT_LINE(str);
END;
CONSTキーワードを指定すると定数になります。「定数名 CONSTANT データ型 := 定数値」と宣言します。
DECLARE
--定数宣言
str CONSTANT VARCHAR2(50) := 'Const Hello World';
BEGIN
SYS.DBMS_OUTPUT.PUT_LINE(str);
END;
定数なので下記のように定数に値を代入しようとすると、エラーになります。
DECLARE
--定数宣言
str CONSTANT VARCHAR2(50) := 'Const Hello World';
BEGIN
--定数に値を代入しようとするのでエラーになる。
str := 'Change Const Value';
SYS.DBMS_OUTPUT.PUT_LINE(str);
END;
【関連】
PLSQL 変数の精度について
0 件のコメント:
コメントを投稿