Firebird – Como localizar tabelas sem Chave Primária

A chave primária é responsável em manter a integridade da tabela no banco de dados e o índice de maior eficiência disponível.

Deveríamos ter uma regra obrigatória:
“NAO PODE DEIXAR DE INDICAR A CHAVE PRIMÁRIA”

Para localizar as tabelas que não possuem chave primária executar:

[code lang=”SQL”]
SELECT RDB$RELATION_NAME AS Tabela
FROM RDB$RELATIONS
WHERE RDB$RELATION_TYPE IN (0, 4, 5)
AND (RDB$SYSTEM_FLAG = 0 OR RDB$SYSTEM_FLAG IS NULL)
AND RDB$RELATION_NAME NOT IN
(SELECT RDB$RELATION_NAME FROM RDB$RELATION_CONSTRAINTS
WHERE RDB$CONSTRAINT_TYPE = ‘PRIMARY KEY’)
ORDER BY RDB$RELATION_NAME;
[/code]

fonte: Firebird Conference 2014 – Ivan Prenosil

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *