No SQLite, podemos usar o
IF EXISTS
cláusula do DROP TABLE
para verificar se a tabela existe ou não antes de eliminá-la. Exemplo
Segue um exemplo para demonstrar:
DROP TABLE IF EXISTS t1;
Essa instrução descarta uma tabela chamada
t1
se existe. Quando executei essa instrução, a tabela já existia e, portanto, foi descartada.
Quando executei a instrução novamente (depois de já ter sido descartada), não recebi nenhum erro.
Veja o que acontece quando não usamos
IF EXISTS
:DROP TABLE t1;
Resultado:
Error: no such table: t1
Desta vez, recebemos um erro informando que a tabela não existe.
Veja SQLite
DROP TABLE
para uma discussão sobre chaves estrangeiras e dependências de exibição ao descartar tabelas no SQLite. Você também pode executar uma consulta no
sqlite_master
table se você quiser apenas verificar se existe uma tabela sem eliminá-la.