次の方法で共有


外部キーのプロパティを表示する

適用対象: SQL Server 2016 (13.x) 以降 Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

SQL Server では、SQL Server Management Studio または Transact-SQL を使用して、リレーションシップの外部キー属性を表示できます。

アクセス許可

カタログ ビューでのメタデータの可視性は、ユーザーが所有しているか、ユーザーに何らかのアクセス許可が付与されているセキュリティ保護可能なリソースに限定されます。 詳細については、「 Metadata Visibility Configuration」を参照してください。

SQL Server Management Studio を使用します。

  1. 表示する外部キーを含むテーブルのテーブル デザイナーを開き、テーブル デザイナー内を右クリックして、ショートカット メニューの [リレーションシップ] をクリックします。

  2. [外部キーのリレーションシップ] ダイアログ ボックスで、表示するプロパティを持つリレーションシップを選択します。

外部キー列が主キーに関連付けられている場合、 テーブル デザイナー では、主キー列が、行セレクターの主キーの記号によって示されます。

Transact-SQL の使用

  1. オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。

  2. 標準バーで、 [新しいクエリ] を選択します。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] を選択します。 この例では、サンプル データベース内の HumanResources.Employee テーブルを対象に、すべての外部キーとそのプロパティを取得します。

    USE AdventureWorks2022;
    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');
    

詳細については、「sys.foreign_keys」と「sys.foreign_key_columns」をご覧ください。