SQLForeignKeys

ODBC and SQL Server

ODBC and SQL Server

SQLForeignKeys

SQLForeignKeys uses the catalog stored procedure sp_fkeys to report foreign keys referencing a table's primary key or columns in a table that reference the primary key columns of other tables.

The following table shows the SQLForeignKeys parameter mapping for sp_fkeys stored procedure execution.

SQLForeignKeys parameter name sp_fkeys parameter name
PKTableCatalog pktable_qualifier
PKTableSchema pktable_owner
PKTableName pktable_name
FKTableCatalog fktable_qualifier
FKTableSchema fktable_owner
FKTableName fktable_name

Microsoft® SQL Server™ supports cascading updates and deletes through the foreign key constraint mechanism. SQL Server returns SQL_CASCADE for UPDATE_RULE and/or DELETE_RULE columns if CASCADE option is specified on the ON UPDATE and/or ON DELETE clause of the FOREIGN KEY constraints. SQL Server returns SQL_NO_ACTION for UPDATE_RULE and/or DELETE_RULE columns if NO ACTION option is specified on the ON UPDATE and/or ON DELETE clause of the FOREIGN KEY constraints.

When invalid values are present in any SQLForeignKeys parameter, SQLForeignKeys returns SQL_SUCCESS on execution. SQLFetch returns SQL_NO_DATA when invalid values are used in these parameters.

SQLForeignKeys can be executed on a static server cursor. An attempt to execute SQLForeignKeys on an updatable (dynamic or keyset) cursor will return SQL_SUCCESS_WITH_INFO indicating that the cursor type has been changed.

The SQL Server ODBC driver supports reporting information for tables on linked servers by accepting a two-part name for the FKCatalogName and PKCatalogName parameters: Linked_Server_Name.Catalog_Name.

See Also

sp_fkeys