Microsoft SQL Server Come trovare le chiavi esterne in un database

Una chiave esterna è una colonna o colonne utilizzate per imporre un collegamento tra i dati in due tabelle. Mentre SQL Server non offre un modo semplice e rapido per visualizzare tutte le chiavi esterne in un database, questa query veloce ti fornirà tali informazioni. È utile quando si tenta di risolvere gli errori di vincolo di chiave esterna.

1. Aprire una nuova query sul database desiderato.

2. Copia, incolla ed esegui quanto segue:
SELEZIONARE
FKConstraintName = a.CONSTRAINT_NAME,
FKTable = b.TABLE_NAME,
FKColumn = c.COLUMN_NAME,
PKTable = d.TABLE_NAME,
PKColumn = e.COLUMN_NAME
A PARTIRE DAL
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS a
INNER JOIN
INFORMATION_SCHEMA.TABLE_CONSTRAINTS b
SU a.CONSTRAINT_NAME = b.CONSTRAINT_NAME
INNER JOIN
INFORMATION_SCHEMA.TABLE_CONSTRAINTS d
SU a.UNIQUE_CONSTRAINT_NAME = d.CONSTRAINT_NAME
INNER JOIN
INFORMATION_SCHEMA.KEY_COLUMN_USAGE c
SU a.CONSTRAINT_NAME = c.CONSTRAINT_NAME
INNER JOIN
(
SELEZIONARE
f.TABLE_NAME, g.COLUMN_NAME
A PARTIRE DAL
INFORMATION_SCHEMA.TABLE_CONSTRAINTS f
INNER JOIN
INFORMATION_SCHEMA.KEY_COLUMN_USAGE g
SU f.CONSTRAINT_NAME = g.CONSTRAINT_NAME
DOVE f.CONSTRAINT_TYPE = 'CHIAVE PRIMARIA'
) e
ON e.TABLE_NAME = d.TABLE_NAME
ORDINARE DA a.CONSTRAINT_NAME

Ora puoi facilmente vedere tutte le chiavi esterne in quel database.