ヘッダーをスキップ
Oracle Database PL/SQL言語リファレンス
11g リリース1(11.1)
E05670-03
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

変数

変数は、変更可能な値を保持します。

変数の宣言では、その名前、データ型および値を指定し、使用する記憶域を割り当てます。 また、初期値を代入したり、NOT NULL制約を付けることもできます。

構文

variable_declaration ::=

variable_declaration
variable_declaration.gifの説明

expression ::=

datatype ::=

datatype
datatype.gifの説明

キーワードとパラメータの説明

collection_name

現行の有効範囲のうち、これより前の部分で宣言されているコレクション(結合配列、ネストした表またはVARRAY)を識別します。

collection_type_name

データ型指定子TABLEまたはVARRAYを使用して定義されたユーザー定義のコレクション型を識別します。

cursor_name

現行の有効範囲の中で、事前に宣言されている明示カーソルを識別します。

cursor_variable_name

現行の有効範囲の中で事前に宣言されているPL/SQLカーソル変数を識別します。

db_table_name

宣言がPL/SQLコンパイラによって処理されるときにアクセスできる必要があるデータベースの表(またはビュー)を識別します。

db_table_name.column_name

宣言がPL/SQLコンパイラによって処理されるときにアクセスできる必要があるデータベースの表および列を識別します。

expression

宣言が処理されるときに変数に代入される値です。 expressionの値は、変数のデータ型と互換性のあるデータ型にする必要があります。

NOT NULL

プログラムでNULL値を変数に代入できないようにするための制約です。NOT NULLとして定義された変数にNULLを代入しようとすると、事前定義の例外VALUE_ERRORが呼び出されます。

object_name

現行の有効範囲のうち、これより前の部分で宣言されているオブジェクト型のインスタンスを識別します。

record_name

現行の有効範囲のうち、これより前に宣言されているユーザー定義のレコードまたは%ROWTYPEレコードを識別します。

record_name.field_name

現行の有効範囲のうち、これより前に宣言されているユーザー定義のレコードまたは%ROWTYPEレコードのフィールドを識別します。

record_type_name

データ型指定子RECORDを使用して定義するユーザー定義のレコード型を識別します。

ref_cursor_type_name

データ型指定子REF CURSORを使用して定義されたユーザー定義のカーソル変数型を識別します。

%ROWTYPE

データベース表の中の行、またはカーソルを保持できるレコードを表します。レコードの中のフィールドと行の中の列は、同じ名前とデータ型を持ちます。

scalar_datatype_name

事前定義済のスカラー・データ型(BOOLEANNUMBERVARCHAR2など)を識別します。サイズ、精度および文字またはバイトのセマンティクスの修飾子が含まれます。

%TYPE

これより前に宣言されたコレクション、カーソル変数、フィールド、オブジェクト、レコード、データベース列または変数のデータ型を表します。

variable_name

変数の名前。ネーミング規則は、「識別子」を参照してください。

使用上の注意

変数は、ブロックまたはサブプログラムに入るたびに初期化されます。デフォルトでは、変数はNULLに初期化されます。 パッケージの仕様部で宣言された変数は、パブリックであるかプライベートであるかに関係なく、セッションごとに1回のみ初期化されます。

NOT NULL変数を宣言する場合は、初期化句が必要です。%ROWTYPEを使用して変数を宣言する場合は、初期化できません。

関連トピック