Часть 6.3: Команда DROP в SQLite3. DDL оператор DROP в SQLite
Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. Мы…
Привет, посетитель сайта ZametkiNaPolyah.ru! Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. Мы уже познакомились с созданием таблиц в SQLite, теперь давайте рассмотрим, как можно удалить таблицу из базы данных SQLite. Из этой записи вы узнаете общий синтаксис удаления таблиц и найдете несколько примеров удаления таблицы из базы данных, например, как проверить таблицу на существование и затем ее удалить, как удалить таблицу с использованием квалификатора и как можно удалить временную таблицу из базы данных SQLite3.
Содержание статьи:
Мы уже довольно подробно рассматривали удаление таблиц, когда говорили о команде DROP в SQlite3. Давайте повторим пройденное и посмотрим, как можно удалить таблицу из базы данных в SQLite. Общий синтаксис удаления таблиц в SQlite3 представлен на рисунке ниже.
Для удаления таблиц из базы данных SQLite используется ключевое слово DROP TABLE, после которого можно воспользоваться конструкцией IF EXISTS, которая заставит SQLite проверить на существование таблицу, прежде чем ее удалить. Затем необходимо указать имя таблицы, которую нужно удалить из базы данных SQLite. Вместо имени таблицы для удаления может быть использован квалификатор в том случае, когда вы хотите быть уверенным в том, что таблица будет удалена из конкретной базы данных.
Давайте рассмотрим простейший способ удаления таблицы из базы данных SQLite, где мы просто укажем SQLite3 имя таблицы, которую нужно удалить:
[php] DROP TABLE table1; [/php]
Здесь мы просто указали имя таблицы, которую хотим удалить из базы данных. Если таблица с таким именем существует, то SQLite ее удалит, если нет- SQLite выдаст ошибку.
Давайте теперь рассмотрим, как избавиться от ошибок при удалении таблиц в SQLite, для этого существует конструкция IF EXISTS, она позволяет SQLite сперва проверить наличие таблицы в базе данных, а затем удалить таблицу, если она существует. Если таблицы не существует SQLite ничего не станет делать и не выдаст предупреждение:
[php] DROP TABLE IF EXISTS table2; [/php]
Мы можем повторить удаление таблицы table2, чтобы убедиться, что никаких ошибок не будет при удалении.
Последнее, что необходимо рассмотреть – удаление таблиц в SQLite3 с использование квалификаторов. При удалении таблиц в SQLite3 мы можем указывать не только имя таблицы, но и базу данных, из которой мы хотим удалить таблицу, ведь у нас их может быть их несколько:
[php]DROP TABLE IF EXISTS sampledb.table2;[/php]
Здесь мы удаляем таблицу table2 из базы данных sampledb, обратите внимание на то, что расширение файла базы данных не указывается.
Хотел бы так же обратить внимание на удаление временных таблиц в SQLite3. Во многих СУБД для удаления временных таблиц необходимо использовать ключевое слово TEMP или TEMPORARY после команды DROP TABLE, в SQLite этого делать не нужно.
Давайте создадим временную таблицу при помощи команды CREATE TEMP TABLE:
[php]CREATE TEMP TABLE temptable1 (a,b,c,d);[/php]
Убедимся, что таблица была действительно создана при помощи команды .tables. А затем удалим временную таблицу:
[php] DROP TABLE temptable1; [/php]
Таким образом мы удалили временную таблицу из базы данных SQLite. Если вы используете ключевое слово TEMP или TEMPORARY при удалении временной таблицы, то SQLite выдаст вам ошибку.
Выберете удобный для себя способ, чтобы оставить комментарий