Oracle® Database PL/SQL Language Reference 11g Release 2 (11.2) Part Number E10472-02 |
|
|
View PDF |
A constant holds a value that does not change.
A constant declaration specifies the name, data type, and value of the constant and allocates storage for it. The declaration can also impose the NOT
NULL
constraint.
Topics:
Syntax
constant_declaration ::=
See expression ::=.
datatype ::=
Semantics
collection_name
The name of a collection.
collection_type_name
A user-defined collection type defined using the data type specifier TABLE
or VARRAY
.
constant_name
The name of the constant that you are declaring.
cursor_name
The name of an explicit cursor.
cursor_variable_name
The name of a PL/SQL cursor variable.
db_table_name
The name of a database table or view, which must be accessible when the declaration is elaborated.
column_name
The name of a column in db_table_name
.
expression
An expression whose value has a data type compatible with datatype
(see Table 3-10, "Possible Implicit PL/SQL Data Type Conversions"). When constant_declaration
is elaborated, the value of expression
is assigned to constant_name
. This value is the initial value of the constant.
NOT NULL
Prevents the program from assigning the value NULL
to the constant.
PL/SQL subtypes NATURALN
, POSITIVEN
, and SIMPLE_INTEGER
are predefined as NOT
NULL
. When declaring a constant of one of these subtypes, you can omit NOT
NULL
.
If you declare a NOT
NULL
constant, either by specifying NOT
NULL
or by specifying a subtype that is predefined as NOT
NULL
, you must also specify an initial value for the constant (see expression).
object_name
The name of an instance of a type.
record_name
The name of a record.
field_name
The name of a field of record_name
.
record_type_name
The name of a user-defined type that was defined with the data type specifier RECORD
.
ref_cursor_type_name
The name of a user-defined type that was defined with the data type specifier REF
CURSOR
.
%ROWTYPE
See "%ROWTYPE Attribute".
scalar_datatype_name
The name of a predefined scalar data type, including any qualifiers for size, precision, and character or byte semantics. For information about predefined scalar data types, see "Predefined PL/SQL Scalar Data Types and Subtypes".
%TYPE
See "%TYPE Attribute".
Examples
Related Topics
In this chapter:
In other chapters: