Isso realmente pertence mais ao StackOverflow do que ao ServerFault, não é?
Enfim, achei esse script que publiquei há alguns anos: Listar todas as tabelas sem uma chave primária . Funciona para o SQL 2000 +.
É possível produzir uma lista de todas as tabelas dentro de um banco de dados especificado que não possua uma chave primária?
Este é o SQL Server 2005.
Isso realmente pertence mais ao StackOverflow do que ao ServerFault, não é?
Enfim, achei esse script que publiquei há alguns anos: Listar todas as tabelas sem uma chave primária . Funciona para o SQL 2000 +.
yikes! visões do esquema de informações são feias.
Se o seu banco de dados for 2005, use as exibições do catálogo, como recomendado pelo MS
Aqui está minha solução:
SELECT
* from sys.tables
WHERE object_id not in
(SELECT object_id from sys.indexes WHERE is_primary_key=1)