Часть 10.2: Удаление таблицы из базы данных SQLite3

Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. Мы уже познакомились с созданием таблиц в SQLite, теперь давайте рассмотрим, как можно удалить таблицу из базы данных SQLite. Из этой записи вы узнаете общий синтаксис удаления таблиц и найдете несколько примеров удаления таблицы из базы данных, например, как проверить таблицу на существование и затем ее удалить, как удалить таблицу с использованием квалификатора и как можно удалить временную таблицу из базы данных SQLite3.

Удаление таблицы из базы данных SQLite3

Удаление таблицы из базы данных SQLite3


Синтаксис удаление таблицы из базы данных SQLite3

Мы уже довольно подробно рассматривали удаление таблиц, когда говорили о команде DROP в SQlite3. Давайте повторим пройденное и посмотрим, как можно удалить таблицу из базы данных в SQLite. Общий синтаксис удаления таблиц в SQlite3 представлен на рисунке ниже.

Синтаксис удаление таблицы из базы данных SQLite3

Синтаксис удаление таблицы из базы данных SQLite3

Для удаления таблиц из базы данных SQLite используется ключевое слово DROP TABLE, после которого можно воспользоваться конструкцией IF EXISTS, которая заставит SQLite проверить на существование таблицу, прежде чем ее удалить. Затем необходимо указать имя таблицы, которую нужно удалить из базы данных SQLite. Вместо имени таблицы для удаления может быть использован квалификатор в том случае, когда вы хотите быть уверенным в том, что таблица будет удалена из конкретной базы данных.

Простой примеры удаления таблиц из базы данных SQLite

Давайте рассмотрим простейший способ удаления таблицы из базы данных SQLite, где мы просто укажем SQLite3 имя таблицы, которую нужно удалить:

Здесь мы просто указали имя таблицы, которую хотим удалить из базы данных. Если таблица с таким именем существует, то SQLite ее удалит, если нет- SQLite выдаст ошибку.

Выполняем проверку перед удалением таблицы из базы данных SQLite3

Давайте теперь рассмотрим, как избавиться от ошибок при удалении таблиц в SQLite, для этого существует конструкция IF EXISTS, она позволяет SQLite сперва проверить наличие таблицы в базе данных, а затем удалить таблицу, если она существует. Если таблицы не существует SQLite ничего не станет делать и не выдаст предупреждение:

Мы можем повторить удаление таблицы table2, чтобы убедиться, что никаких ошибок не будет при удалении.

Удаление таблиц в SQLite с использованием квалификатора

Последнее, что необходимо рассмотреть – удаление таблиц в SQLite3 с использование квалификаторов. При удалении таблиц в SQLite3 мы можем указывать не только имя таблицы, но и базу данных, из которой мы хотим удалить таблицу, ведь у нас их может быть их несколько:

Здесь мы удаляем таблицу table2 из базы данных sampledb, обратите внимание на то, что расширение файла базы данных не указывается.

Удаление временных таблиц из БД SQLite3

Хотел бы так же обратить внимание на удаление временных таблиц в SQLite3. Во многих СУБД для удаления временных таблиц необходимо использовать ключевое слово TEMP или TEMPORARY после команды DROP TABLE, в SQLite этого делать не нужно.

Давайте создадим временную таблицу при помощи команды CREATE TEMP TABLE:

Убедимся, что таблица была действительно создана при помощи команды .tables. А затем удалим временную таблицу:

Таким образом мы удалили временную таблицу из базы данных SQLite. Если вы используете ключевое слово TEMP или TEMPORARY при удалении временной таблицы, то SQLite выдаст вам ошибку.

Текст комментария: