ALTER TYPE [SYSUDTLIB.] UDT_name { [ ADD | DROP ] { attribute_clause | method_clause | specific_method_clause } | COMPILE [ONLY] } [;]
- attribute_clause
ATTRIBUTE attribute_specification [,...]- method_clause
[ INSTANCE | CONSTRUCTOR ] METHOD [SYSUDTLIB.] method_name [ ( data_type_or_UDT_name [,...] ) ] { returns_clause | LANGUAGE { C | CPP } | PARAMETER STYLE { SQL | TD_GENERAL } | [NOT] DETERMINISTIC | NO SQL }
- specific_method_clause
SPECIFIC METHOD [SYSUDTLIB.] specific_method_name [ ( data_type_or_UDT_name [,...] ) ] FOR [SYSUDTLIB.] UDT_name
- returns_clause
RETURNS data_type_or_UDT_name CAST FROM data_type_or_UDT_name
- attribute_specification
attribute_name data_type_or_UDT_name
- data_type_or_UDT_name
{ data_type | [SYSUDTLIB.] UDT_name }- data_type
{ INTEGER | SMALLINT | BIGINT | BYTEINT | DATE | { TIME | TIMESTAMP } [ (fractional_seconds_precision) ] [WITH TIME ZONE] | INTERVAL YEAR [(precision)] [TO MONTH] | INTERVAL MONTH [(precision)] | INTERVAL DAY [(precision)] [TO { HOUR | MINUTE | SECOND [(fractional_seconds_precision)] }] | INTERVAL HOUR [(precision)] [TO { MINUTE | SECOND [(fractional_seconds_precision)] }] | INTERVAL MINUTE [(precision)] [TO SECOND [(fractional_seconds_precision)]] | INTERVAL SECOND [ ( precision [, fractional_seconds_precision ] ) | PERIOD (DATE) | PERIOD ( { TIME | TIMESTAMP } [(precision)] [WITH TIME ZONE] ) | REAL | DOUBLE PRECISION | FLOAT [ (integer) ] | NUMBER [ ( { integer | *} [, integer]... ) ] | { DECIMAL | NUMERIC } [ ( integer [, integer]... ) ] | { CHAR | BYTE | GRAPHIC } [ (integer) ] | { VARCHAR | CHAR VARYING | VARBYTE | VARGRAPHIC } [ (integer) ] | LONG VARCHAR | LONG VARGRAPHIC | { BINARY LARGE OBJECT | BLOB | CHARACTER LARGE OBJECT | CLOB } ( integer [ G | K | M ] ) | { XML | XMLTYPE } | JSON [ ( integer ) ] [ CHARACTER SET { UNICODE | LATIN } ] | [SYSUDTLIB.] { UDT_name | ST_Geometry | MBR | ARRAY_name | VARRAY_name } }