Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Verifique se existe uma tabela no Oracle


No Banco de Dados Oracle, existem várias visualizações que podemos consultar para descobrir se existe uma tabela.

Exemplo


Por exemplo, USER_TABLES descreve as tabelas relacionais de propriedade do usuário atual.
SELECT TABLE_NAME 
FROM USER_TABLES 
WHERE TABLE_NAME = 'COUNTRIES';

Resultado:
COUNTRIES

Neste exemplo, verifiquei se há uma tabela relacional chamada COUNTRIES que pertence ao usuário atual.

Poderíamos ajustar esta consulta para retornar apenas a contagem:
SELECT COUNT(TABLE_NAME)
FROM USER_TABLES 
WHERE TABLE_NAME = 'COUNTRIES';

Resultado:
1

Nesse caso, o nome da tabela existe e, portanto, a contagem é 1 .

Veja o que acontece quando a tabela não existe:
SELECT COUNT(TABLE_NAME)
FROM USER_TABLES 
WHERE TABLE_NAME = 'USERS';

Resultado:
0

A tabela a seguir lista outras exibições que contêm informações sobre tabelas no Oracle Database.
Visualizar Descrição
USER_TABLES Descreve as tabelas relacionais pertencentes ao usuário atual (esta visualização é usada no exemplo acima).
ALL_TABLES Descreve as tabelas relacionais acessíveis ao usuário atual.
DBA_TABLES Descreve todas as tabelas relacionais no banco de dados.
USER_ALL_TABLES Descreve as tabelas de objetos e tabelas relacionais pertencentes ao usuário atual.
DBA_ALL_TABLES Descreve todas as tabelas de objetos e tabelas relacionais no banco de dados.
ALL_ALL_TABLES Descreve as tabelas de objetos e tabelas relacionais acessíveis ao usuário atual.