sql >> Databáze >  >> RDS >> Sqlserver

Jak mohu zjistit, jaké omezení FOREIGN KEY odkazuje na tabulku v SQL Server?

Tady to je:

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'

Tímto způsobem získáte referenční tabulku a název sloupce.

Upraveno pro použití sys.tables místo obecných sys.objects podle návrhu komentáře. Díky, marc_s



  1. Jak zobrazit čísla řádků v dotazu PostgreSQL?

  2. java.sql.SQLException:Přístup odepřen uživateli 'root'@'localhost' (pomocí hesla:ANO)

  3. Řízení stromového zobrazení Zaškrtněte Přidat Odstranit uzly

  4. psql nastavil výchozí statement_timeout jako uživatel v postgresu