I SQLite kan vi använda IF EXISTS
sats i DROP TABLE
för att kontrollera om tabellen finns eller inte innan du släpper den.
Exempel
Här är ett exempel att visa:
DROP TABLE IF EXISTS t1;
Den satsen släpper en tabell som heter t1
om det finns.
När jag körde det uttalandet fanns tabellen redan, och därför togs den bort.
När jag körde uttalandet igen (efter att det redan hade tagits bort) fick jag inget felmeddelande.
Här är vad som händer när vi inte använder IF EXISTS
:
DROP TABLE t1;
Resultat:
Error: no such table: t1
Den här gången får vi ett felmeddelande som säger att tabellen inte finns.
Se SQLite DROP TABLE
för en diskussion om främmande nycklar och vyberoenden när tabeller tas bort i SQLite.
Du kan också köra en fråga mot sqlite_master
tabell om du bara vill kontrollera om en tabell finns utan att släppa den.