The KEY_COLUMN_USAGE table describes
which key columns have constraints. This table provides no
information about functional key parts because they are
expressions and the table provides information only about columns.
The KEY_COLUMN_USAGE table has these
columns:
CONSTRAINT_CATALOGThe name of the catalog to which the constraint belongs. This value is always
def.CONSTRAINT_SCHEMAThe name of the schema (database) to which the constraint belongs.
CONSTRAINT_NAMEThe name of the constraint.
TABLE_CATALOGThe name of the catalog to which the table belongs. This value is always
def.TABLE_SCHEMAThe name of the schema (database) to which the table belongs.
TABLE_NAMEThe name of the table that has the constraint.
COLUMN_NAMEThe name of the column that has the constraint.
If the constraint is a foreign key, then this is the column of the foreign key, not the column that the foreign key references.
ORDINAL_POSITIONThe column's position within the constraint, not the column's position within the table. Column positions are numbered beginning with 1.
POSITION_IN_UNIQUE_CONSTRAINTNULLfor unique and primary-key constraints. For foreign-key constraints, this column is the ordinal position in key of the table that is being referenced.REFERENCED_TABLE_SCHEMAThe name of the schema referenced by the constraint.
REFERENCED_TABLE_NAMEThe name of the table referenced by the constraint.
REFERENCED_COLUMN_NAMEThe name of the column referenced by the constraint.
Suppose that there are two tables name t1 and
t3 that have the following definitions:
CREATE TABLE t1
(
s1 INT,
s2 INT,
s3 INT,
PRIMARY KEY(s3)
) ENGINE=InnoDB;
CREATE TABLE t3
(
s1 INT,
s2 INT,
s3 INT,
KEY(s1),
CONSTRAINT CO FOREIGN KEY (s2) REFERENCES t1(s3)
) ENGINE=InnoDB;
For those two tables, the
KEY_COLUMN_USAGE table has two rows:
One row with
CONSTRAINT_NAME='PRIMARY',TABLE_NAME='t1',COLUMN_NAME='s3',ORDINAL_POSITION=1,POSITION_IN_UNIQUE_CONSTRAINT=NULL.For
NDB: This value is alwaysNULL.One row with
CONSTRAINT_NAME='CO',TABLE_NAME='t3',COLUMN_NAME='s2',ORDINAL_POSITION=1,POSITION_IN_UNIQUE_CONSTRAINT=1.