No SQLServer 2008 r2. Eu preciso descobrir para uma tabela específica o que os FKs em outras tabelas apontam para ela.
Eu tento:
SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
Mas isso não me dá o que eu preciso.
Alguma dica?
No SQLServer 2008 r2. Eu preciso descobrir para uma tabela específica o que os FKs em outras tabelas apontam para ela.
Eu tento:
SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
Mas isso não me dá o que eu preciso.
Alguma dica?
Parece que isso pode lhe dar o que você precisa:
http://www.sqlskills.com/BLOGS/PAUL/post/Programmatically-picking-apart-foreign-key-constraints.aspx
Você deseja usar as exibições de gerenciamento:
sys.foreign_keys
e
sys.foreign_key_columns
O último tem IDs de coluna e objeto para ambos os lados da restrição, então você pode fazer uma consulta como:
Este link é para um script de engenharia reversa de banco de dados que escrevi há alguns anos. Entre outras coisas, ele possui uma consulta que faz engenharia reversa de chaves estrangeiras. Você pode conseguir o que deseja adaptando-o.