Column Index Element
Function
Specifies a column as an index.
Invocation
This element is part of the table column element.
Syntax
[UQ INDEX | [HAVING UNIQUE] INDEX] [index_identifier]
Where index_identfier is a valid identifier for an index conforming to the rules about identifiers described in SQL Tokens, Identifiers, Delimiters.
Description
The following conventions hold true for the following explanations:
Let C be the column for which this constraint is specified.
Let T be the table where column C resides.
INDEX:
If there is no range specified in an INDEX specification, an Adabas descriptor will be added. If a range is specified across only one column, an Adabas Subdescriptor will be generated.
HAVING UNIQUE INDEX:
This feature is provided for compatibility and will be removed in future versions. Use the UNIQUE constraint instead.
UQINDEX:
A UQINDEX is an index that generates an Adabas unique sub- or superdescriptor on a subtable column. SQL does not consider this descriptor to be unique so it cannot be represented by a normal "unique constraint."
Limitations
A HAVING UNIQUE INDEX specification is not allowed in subtables. A UQINDEX specification is allowed in subtables.
Do not specify a HAVING UNIQUE INDEX together with a UNIQUE constraint or a PRIMARY KEY.
HAVING UNIQUE INDEX cannot have both the NOT NULL and the SUPPRESSION attributes.
HAVING UNIQUE INDEX cannot have both the NULL and the Adabas DEFAULT attributes.
ANSI Specifics
The Column Index Element is not part of the Standard.