GUID: DBSCHEMA_FOREIGN_KEYS
Number of restriction columns: 6
Restriction columns: PK_TABLE_CATALOG, PK_TABLE_SCHEMA, PK_TABLE_NAME, FK_TABLE_CATALOG, FK_TABLE_SCHEMA, FK_TABLE_NAME
Default sort order: FK_TABLE_CATALOG, FK_TABLE_SCHEMA, FK_TABLE_NAME
Description: The FOREIGN_KEYS rowset identifies the foreign key columns defined in the catalog by a given user. This schema rowset is built upon several SQL-92 schema views as a convenience to the non-SQL programmer, and if supported, this must be synchronized with the related SQL-92 views (REFERENTIAL_CONSTRAINTS and CONSTRAINT_COLUMN_USAGE).
Column name | Type indicator | Description |
---|---|---|
PK_TABLE_CATALOG | DBTYPE_WSTR | Catalog name in which the primary key table is defined. NULL if the provider does not support catalogs. |
PK_TABLE_SCHEMA | DBTYPE_WSTR | Unqualified schema name in which the primary key table is defined. NULL if the provider does not support schemas. |
PK_TABLE_NAME | DBTYPE_WSTR | Primary key table name. |
PK_COLUMN_NAME | DBTYPE_WSTR | Primary key column name. This column, together with the PK_COLUMN_GUID and PK_COLUMN_PROPID columns, forms the column ID. One or more of these columns will be NULL, depending on which elements of the DBID structure the provider uses. |
PK_COLUMN_GUID | DBTYPE_GUID | Primary key column GUID. |
PK_COLUMN_PROPID | DBTYPE_UI4 | Primary key column property ID. |
FK_TABLE_CATALOG | DBTYPE_WSTR | Catalog name in which the foreign key table is defined. NULL if the provider does not support catalogs. |
FK_TABLE_SCHEMA | DBTYPE_WSTR | Unqualified schema name in which the foreign key table is defined. NULL if the provider does not support schemas. |
FK_TABLE_NAME | DBTYPE_WSTR | Foreign key table name. |
FK_COLUMN_NAME | DBTYPE_WSTR | Foreign key column name. This column, together with the FK_COLUMN_GUID and FK_COLUMN_PROPID columns, forms the column ID. One or more of these columns will be NULL, depending on which elements of the DBID structure the provider uses. |
FK_COLUMN_GUID | DBTYPE_GUID | Foreign key column GUID. |
FK_COLUMN_PROPID | DBTYPE_UI4 | Foreign key column property ID. |
ORDINAL | DBTYPE_UI4 | The order of the column names (and GUIDs and property IDs) in the key. For example, a table might contain several foreign key references to another table. The ordinal starts over for each reference; for example, two references to a three-column key would return 1, 2, 3, 1, 2, 3. |
UPDATE_RULE | DBTYPE_WSTR | If an <update rule> was specified, then the UPDATE_RULE value is one of the following:
"CASCADE"—A <referential action> of CASCADE was specified. "SET NULL"—A <referential action> of SET NULL was specified. "SET DEFAULT"—A <referential action> of SET DEFAULT was specified. "NO ACTION"—A <referential action> of NO ACTION was specified. Providers should return NULL only if they cannot determine the UPDATE_RULE. In most cases, this implies a default of NO ACTION. |
DELETE_RULE | DBTYPE_WSTR | If a <delete rule> was specified, the DELETE_RULE value is one of the following:
"CASCADE"—A <referential action> of CASCADE was specified. "SET NULL"—A <referential action> of SET NULL was specified. "SET DEFAULT"—A <referential action> of SET DEFAULT was specified. "NO ACTION"—A <referential action> of NO ACTION was specified. Providers should return NULL only if they cannot determine the DELETE_RULE. In most cases, this implies a default of NO ACTION. |
PK_NAME | DBTYPE_WSTR | Primary key name. NULL if the provider does not support named primary key constraints. This column is not returned by 1.x providers. |
FK_NAME | DBTYPE_WSTR | Foreign key name. NULL if the provider does not support named foreign key constraints. This column is not returned by 1.x providers. |
DEFERRABILITY | DBTYPE_I2 | Deferrability of the foreign key. Value is one of the following:
DBPROPVAL_DF_INITIALLY_DEFERRED DBPROPVAL_DF_INITIALLY_IMMEDIATE DBPROPVAL_DF_NOT_DEFERRABLE This column is not returned by 1.x providers. |