W SQLite możemy użyć IF EXISTS
klauzula DROP TABLE
oświadczenie, aby sprawdzić, czy tabela istnieje, czy nie przed jej usunięciem.
Przykład
Oto przykład do zademonstrowania:
DROP TABLE IF EXISTS t1;
Ta instrukcja upuszcza tabelę o nazwie t1
jeśli istnieje.
Kiedy uruchomiłem to oświadczenie, tabela już istniała, więc została usunięta.
Kiedy ponownie uruchomiłem instrukcję (po tym, jak zostało już usunięte), nie pojawił się błąd.
Oto, co się dzieje, gdy nie używamy IF EXISTS
:
DROP TABLE t1;
Wynik:
Error: no such table: t1
Tym razem pojawia się błąd informujący nas, że tabela nie istnieje.
Zobacz SQLite DROP TABLE
do dyskusji na temat kluczy obcych i zależności widoków podczas upuszczania tabel w SQLite.
Możesz także uruchomić zapytanie względem sqlite_master
tabeli, jeśli chcesz tylko sprawdzić, czy tabela istnieje bez upuszczania jej.