Как очистить таблицу в sql?

3 ноября 2014 г. Просмотров: 1323 Инструкции
Язык структурированных запросов SQL (Structured Query Language) начал создаваться в семидесятых годах прошлого века двумя американцами (Raymond Boyce и Donald Chamberlin) из корпорации IBM. Официально первая его версия была принята в 1986 году и на сегодня это самый распространенный язык управления базами данных. Разумеется, операция очистки таблиц от записей - одна из базовых в этом языке и может быть осуществлена несколькими способами.

Вам понадобится

  • Базовое знание языка SQL

Инструкция

  • Используйте для очистки таблиц оператор truncate языка SQL, указав в запросе название интересующей вас таблицы. Например, если очистить требуется таблицу с именем TableToClear, то полностью запрос должен выглядеть так:truncate table `TableToClear`
  • Воспользуйтесь в качестве альтернативы оператору truncate построчным удалением данных из таблицы - для этого предназначен оператор delete. Синтаксис этой команды требует указания названия таблицы и условия, при выполнении которого строка должна быть удалена из нее. Если вы впишите условие, которое заведомо верно, независимо от содержания строки, то удалены будет все записи таблицы. Например, для таблицы TableToClear запрос с этим оператором можно составить так:delete from `TableToClear` where 1В отличие от оператора truncate такой запрос вернет количество удаленных строк. Другим отличием выполнения этой команды является блокирование не всей таблицы, а только обрабатываемой в данный момент записи. Этот вариант потребует на выполнение больше времени, что станет заметным при большом количестве строк в очищаемой таблице.
  • Есть и более экзотические варианты - например, удалите таблицу полностью и воссоздайте ее заново в одном Sql-запросе. Для удаления используйте оператор drop, а для создания - create. Например, если таблица TableToClear состоит из текстового поля Name длиной в 50 знаков и целочисленного поля Code с ненулевыми значениями, то записать операции ее удаления и воссоздания можно так:drop table `TableToClear`;create table `TableToClear` ( Code integer not null, Name char (50) not null);
  • Оцените статью!