# SYSCONSTRAINTS system table

The SYSCONSTRAINTS table describes the information common to all types of constraints within the current database (currently, this includes primary key, unique, foreign key, and check constraints).

The following table shows the contents of the SYSCONSTRAINTS system table.

Table 1. SYSCONSTRAINTS system table
Column Name | Type | Length | Nullable | Contents
--- | --- | --- | --- | ---
CONSTRAINTID | CHAR | 36 | false | Unique identifier for constraint
TABLEID | CHAR | 36 | false | Identifier for table (join with SYSTABLES.TABLEID)
CONSTRAINTNAME | VARCHAR | 128 | false | Constraint name (internally generated if not specified by user)
TYPE | CHAR | 1 | false | 'P' (primary key), 'U' (unique), 'C' (check), or 'F' (foreign key)
SCHEMAID | CHAR | 36 | false | Identifier for schema that the constraint belongs to (join with SYSSCHEMAS.SCHEMAID)
STATE | CHAR | 1 | false | 'E' (not deferrable initially immediate), 'i' (deferrable initially immediate), or 'e' (deferrable initially deferred)
REFERENCECOUNT | INTEGER | 10 | false | The count of the number of foreign key constraints that reference this constraint; this number can be greater than zero only for PRIMARY KEY and UNIQUE constraints

Parent topic: Derby system tables