In SQLite, possiamo usare IF EXISTS clausola del DROP TABLE istruzione per verificare se la tabella esiste o meno prima di eliminarla.
Esempio
Ecco un esempio da dimostrare:
DROP TABLE IF EXISTS t1;
Tale istruzione rilascia una tabella chiamata t1 se esiste.
Quando ho eseguito quell'istruzione, la tabella esisteva già e quindi è stata eliminata.
Quando ho eseguito di nuovo l'istruzione (dopo che era già stata eliminata), non ho ricevuto alcun errore.
Ecco cosa succede quando non utilizziamo IF EXISTS :
DROP TABLE t1; Risultato:
Error: no such table: t1
Questa volta riceviamo un errore che ci dice che la tabella non esiste.
Vedi SQLite DROP TABLE per una discussione sulle chiavi esterne e visualizzare le dipendenze quando si eliminano le tabelle in SQLite.
Puoi anche eseguire una query su sqlite_master table se vuoi solo controllare se esiste una tabella senza eliminarla.