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

Come posso elencare tutte le chiavi esterne che fanno riferimento a una determinata tabella in SQL Server?

Non sono sicuro del motivo per cui nessuno ha suggerito ma io uso sp_fkeys per interrogare chiavi esterne per una determinata tabella:

EXEC sp_fkeys 'TableName'

Puoi anche specificare lo schema:

EXEC sp_fkeys @pktable_name = 'TableName', @pktable_owner = 'dbo'

Senza specificare lo schema, i documenti affermano quanto segue:

Se pktable_owner non è specificato, si applicano le regole di visibilità della tabella predefinite del DBMS sottostante.

In SQL Server, se l'utente corrente possiede una tabella con il nome specificato, vengono restituite le colonne di tale tabella. Se pktable_owner non è specificato e l'utente corrente non possiede una tabella con il nome_pktable specificato, la procedura cerca una tabella con il nome_pktable specificato di proprietà del proprietario del database. Se ne esiste una, vengono restituite le colonne di quella tabella.