CustomerID
で呼び出される主キーCustomerTable
があり、この PK が同じデータベース内の他のさまざまなテーブル (50 以上を読み取る) で FK として使用される可能性があります。
この PK が FK として使用されているすべてのテーブルを特定する簡単な方法があるかどうか疑問に思っていました。
注: SQL Server を使用しています
どんな助けでも大歓迎です
CustomerID
で呼び出される主キーCustomerTable
があり、この PK が同じデータベース内の他のさまざまなテーブル (50 以上を読み取る) で FK として使用される可能性があります。
この PK が FK として使用されているすべてのテーブルを特定する簡単な方法があるかどうか疑問に思っていました。
注: SQL Server を使用しています
どんな助けでも大歓迎です
SELECT ro.name as Referedtable, co.name as foreinKey,so.name as ParentTable
FROM sys.foreign_key_columns fkc
join sys.sysobjects co on co.id=fkc.constraint_object_id
join sys.sysobjects so on so.id=fkc.parent_object_id
join sys.sysobjects ro on ro.id=fkc.referenced_object_id
where ro.name='CustomerTable'
私はこれを自分で理解しました、そしてこれが私がしたことです。
SELECT *
FROM [YourDBName].[sys].[foreign_keys]
WHERE name LIKE '%CustomerID%'