Я хотел знать все таблицы, в которых столбец из другой таблицы используется в качестве внешнего ключа или обычного ключа.
Например: перечислить все таблицы, в которых используется столбец tran_id
из таблицы Transactions
. tran_id
может быть внешним ключом или обычным столбцом.
Я попытался использовать следующий запрос, но он возвращает таблицы только с ограничениями внешнего ключа.
SELECT
OBJECT_NAME(f.parent_object_id) TableName,
COL_NAME(fc.parent_object_id, fc.parent_column_id) ColName
FROM
sys.foreign_keys AS f
INNER JOIN
sys.foreign_key_columns AS fc ON f.OBJECT_ID = fc.constraint_object_id
INNER JOIN
sys.tables t ON t.OBJECT_ID = fc.referenced_object_id
WHERE
OBJECT_NAME (f.referenced_object_id) = 'YourTableName'
Любая помощь? Заранее спасибо.