外部キー制約の一覧を取得
できます!
システムテーブル「sys.foreign_keys」により
取得できます!
「sys.tables」および「sys.schema」と紐づけることで
・外部キー制約を設定しているスキーマ名とテーブル名
も合わせて取得できます!
SQL
ここでは当該列に対し別名を付けます。
・外部キー制約の名前
・外部キー制約を設定しているスキーマ名とテーブル名
また好みでソートします。
SELECT
fs.name AS '外部キー制約の名前',
s.name + '.' + t.name AS '外部キー制約を設定しているスキーマ名とテーブル名'
FROM
sys.foreign_keys fs
INNER JOIN sys.tables t
ON t.object_id = fs.parent_object_id
INNER JOIN sys.schemas s
ON s.schema_id = t.schema_id
ORDER BY
外部キー制約の名前
実行結果
外部キー制約の一覧を取得できました。
SQLの結果を見ると、
・テーブル「Production.BillOfMaterials」には外部キー制約が3つ設定されている
ことが確認できます。
裏を取るためにオブジェクトエクスプローラーを見ると、上記の通り
・テーブル「Production.BillOfMaterials」には外部キー制約が3つ設定されている
ことが確認できます。
参考①
外部キー制約の削除もできます。
詳細は以下の記事をご確認ください。
参考②
上記で使用した以下の詳細は、公式サイトをご確認ください。
●テーブル「sys.foreign_keys」