Trovare le tabelle collegate

Offrimi un Caffè

Se c'è la necessità in SQL di individuare i collegamenti fra le tabelle analizzando le dipendenze fra le chiavi, si può utilizzare il seguente script:

SELECT obj.name AS FK_NAME,

    sch.name AS[schema_name],
    tab1.name AS[table],
    col1.name AS[column],
    tab2.name AS[referenced_table],
    col2.name AS[referenced_column]FROM sys.foreign_key_columns fkc
INNER JOIN sys.objects obj
    ON obj.object_id = fkc.constraint_object_id
INNER JOIN sys.tables tab1
    ON tab1.object_id = fkc.parent_object_id
INNER JOIN sys.schemas sch
    ON tab1.schema_id = sch.schema_id
INNER JOIN sys.columns col1
    ON col1.column_id = parent_column_id AND col1.object_id = tab1.object_id
INNER JOIN sys.tables tab2
    ON tab2.object_id = fkc.referenced_object_id
INNER JOIN sys.columns col2
    ON col2.column_id = referenced_column_id AND col2.object_id = tab2.object_id



Esempio Lista Tabelle Collegate

se si necessita di filtrare solo le join ad una determinata tabella, basterà implemetare il seguente codice al termine della stranga precedente:
WHERE tab2.name = '[TABELLA DA FILTRARE]'