sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan kan jeg finde ud af, hvilken FOREIGN KEY-begrænsning, der refererer til en tabel i SQL Server?

Her er den:

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'

På denne måde får du referencetabellen og kolonnenavnet.

Redigeret til at bruge sys.tables i stedet for generiske sys.objects som pr. kommentarforslag. Tak, marc_s



  1. Brug af SELECT-resultatsæt til at køre UPDATE-forespørgsel med MySQL Stored Procedures

  2. Python MySQL-parameteriseret forespørgsel er i konflikt med % jokertegn i LIKE-sætningen

  3. Kunne ikke forbinde AWS-Postgres-server med spring boot-applikation med heroku-hosting

  4. Hvordan kan jeg registrere, om den tilsluttede database er MariaDB eller MySQL?