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

Come ottenere tutte le tabelle che hanno un vincolo di chiave primaria creato nel database di SQL Server - Tutorial di SQL Server / TSQL 57

Scenario:

Stai lavorando come sviluppatore di SQL Server / DBA di SQL Server in compagnia di assicurazioni auto. Ti viene chiesto di fornire una query che dovrebbe restituire l'elenco di tutte le tabelle con nome schema, nome colonna e vincolo chiave primaria su cui è stato creato un vincolo di chiave primaria.

Soluzione:

Esistono diversi modi per ottenere queste informazioni. Utilizzeremo le viste di sistema per ottenere tutte le tabelle con vincoli di chiave primaria nel database di SQL Server.
Select
   TC.Table_Catalog as DatabaseName,
   TC.Table_Schema AS TableSchema,
   TC.Table_Name AS TableName,
   CCU.Column_Name AS ColumnName,
   TC.Constraint_Name AS ConstraintName 
From
   information_Schema.Table_Constraints TC  
INNER JOIN
   Information_Schema.constraint_column_usage CCU  
      on TC.Constraint_Name=CCU.Constraint_Name  
      and TC.Table_Name=CCU.Table_Name  
where
   Constraint_Type='PRIMARY KEY'
 
Eseguo la query precedente su uno dei miei database di test e qui ci sono i miei risultati con i nomi delle tabelle che hanno vincoli di chiave primaria.
Ottieni l'elenco delle tabelle nel database di SQL Server con Vincolo primario - Tutorial SQL Server/TSQL

Video demo:ottieni l'elenco dei vincoli della chiave primaria nel database di SQL Server