PL/SQL User's Guide and Reference
%TYPE Attribute
Description
The %TYPE attribute provides the datatype of a field, record, PL/SQL table, database column, or variable. You can use the %TYPE attribute as a datatype specifier when declaring constants, variables, fields, and parameters. For more information, see "Using %TYPE" .
Syntax
type_attribute ::=
{ cursor_variable_name
| plsql_table_name
| record_name
| record_name.field_name
| table_name.column_name
| variable_name}%TYPE
Keyword and Parameter Description
cursor_variable_name
This identifies a PL/SQL cursor variable previously declared within the current scope.
plsql_table_name
This identifies a PL/SQL table previously declared within the
current scope.
record_name
This identifies a user-defined or %ROWTYPE record previously declared within the current scope.
record_name.field_name
This identifies a field in a user-defined or %ROWTYPE record previously declared within the current scope.
table_name.column_name
This refers to a table and column that must be accessible when the declaration is elaborated.
variable_name
This is the name of a variable previously declared in the same scope. For naming conventions, see "Identifiers" .
Usage Notes
The %TYPE attribute is particularly useful when declaring variables, fields, and parameters that refer to database columns. However, the NOT NULL column constraint does not apply to objects declared
using %TYPE.
Related Topics
Constants and Variables, %ROWTYPE Attribute