定数の宣言では、その名前、データ型および値を指定し、使用する記憶域を割り当てます。 宣言でNOT
NULL
制約を課すこともできます。
構文
constant_declaration ::=
datatype ::=
キーワードとパラメータの説明
collection_name
現行の有効範囲のうち、これより前の部分で宣言されているコレクション(結合配列、ネストした表またはVARRAY)を識別します。
collection_type_name
データ型指定子TABLE
またはVARRAY
を使用して定義されたユーザー定義のコレクション型を識別します。
constant_name
定数の名前。 ネーミング規則は、「識別子」を参照してください。
cursor_name
現行の有効範囲の中で、事前に宣言されている明示カーソルを識別します。
cursor_variable_name
現行の有効範囲の中で事前に宣言されているPL/SQLカーソル変数を識別します。
db_table_name
宣言がPL/SQLコンパイラによって処理されるときにアクセスできる必要があるデータベースの表(またはビュー)を識別します。
db_table_name.column_name
宣言がPL/SQLコンパイラによって処理されるときにアクセスできる必要があるデータベースの表および列を識別します。
expression
宣言が処理されるときに定数に代入される値。 expression
の値は、定数のデータ型と互換性のあるデータ型にする必要があります。
プログラムで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
事前定義済のスカラー・データ型(BOOLEAN
、NUMBER
、VARCHAR2
など)を識別します。 サイズ、精度および文字またはバイトのセマンティクスの修飾子が含まれます。
%TYPE
これより前に宣言されたコレクション、カーソル変数、フィールド、オブジェクト、レコード、データベース列または変数のデータ型を表します。
使用上の注意
定数は、ブロックまたはサブプログラムに入るたびに初期化されます。 パッケージの仕様部で宣言された定数は、パブリックであるかプライベートであるかに関係なく、セッションごとに1回のみ初期化されます。
代入値を戻すファンクションを起動して、リテラル値または事前定義のコンストラクタを持たない複合型の定数を定義できます。 たとえば、この方法で定数の結合配列を作成できます。
関連トピック