View foreign key properties

Applies to: SQL Server 2016 (13.x) and later Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

You can view the foreign key attributes of a relationship in SQL Server by using SQL Server Management Studio or Transact-SQL.

Permissions

The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. For more information, see Metadata Visibility Configuration.

Using SQL Server Management Studio

To view the foreign key attributes of a relationship in a specific table

  1. Open the Table Designer for the table containing the foreign key you want to view, right-click in the Table Designer, and choose Relationships from the shortcut menu.

  2. In the Foreign Key Relationships dialog box, select the relationship with properties you want to view.

If the foreign key columns are related to a primary key, the primary key columns are identified in Table Designer by a primary key symbol in the row selector.

Using Transact-SQL

To view the foreign key attributes of a relationship in a specific table

  1. In Object Explorer, connect to an instance of Database Engine.

  2. On the Standard bar, select New Query.

  3. Copy and paste the following example into the query window and select Execute. The example returns all foreign keys and their properties for the table HumanResources.Employee in the sample database.

    USE AdventureWorks2012;  
    GO  
    SELECT   
        f.name AS foreign_key_name  
       ,OBJECT_NAME(f.parent_object_id) AS table_name  
       ,COL_NAME(fc.parent_object_id, fc.parent_column_id) AS constraint_column_name  
       ,OBJECT_NAME (f.referenced_object_id) AS referenced_object  
       ,COL_NAME(fc.referenced_object_id, fc.referenced_column_id) AS referenced_column_name  
       ,f.is_disabled, f.is_not_trusted
       ,f.delete_referential_action_desc  
       ,f.update_referential_action_desc  
    FROM sys.foreign_keys AS f  
    INNER JOIN sys.foreign_key_columns AS fc   
       ON f.object_id = fc.constraint_object_id   
    WHERE f.parent_object_id = OBJECT_ID('HumanResources.Employee');  
    

For more information, see sys.foreign_keys (Transact-SQL) and sys.foreign_key_columns (Transact-SQL).

Next steps