Cenário:
Você está trabalhando como SQL Server Developer/SQL Server DBA na Auto Insurance Company. Você é solicitado a fornecer uma consulta que deve retornar uma lista de todas as tabelas com Nome do Esquema, Nome da Coluna e Restrição de Chave Primária que tem restrição de chave primária criada nelas.Solução:
Existem várias maneiras de obter essas informações. Vamos usar as visualizações do sistema para obter todas as tabelas com restrições de chave primária no banco de dados 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' Eu executo a consulta acima em um dos meus bancos de dados de teste e aqui estão meus resultados com nomes de tabelas que possuem restrições de chave primária.
Obter lista de tabelas no banco de dados SQL Server que tem restrição primária - SQL Server/TSQL TutorialDemonstração em vídeo:obtenha a lista de restrições de chave primária no banco de dados SQL Server