Разница между DELETE и DROP в SQL

Автор: Laura McKinney
Дата создания: 1 Апрель 2021
Дата обновления: 5 Май 2024
Anonim
Difference between DELETE, TRUNCATE AND DROP in SQL.
Видео: Difference between DELETE, TRUNCATE AND DROP in SQL.

Содержание


DELETE и DROP - это команды, используемые для удаления элементов базы данных. Команда DELETE - это команда языка манипулирования данными, тогда как DROP - это команда языка определения данных. Точка, которая различает команды DELETE и DROP, заключается в том, что УДАЛЯТЬ используется для удаления кортежей из таблицы и DROP используется для удаления всей схемы, таблицы, домена или ограничений из базы данных. Давайте обсудим некоторые различия между командами DELETE и DROP в SQL с помощью сравнительной таблицы ниже.

Содержание: DELETE Vs DROP

  1. Сравнительная таблица
  2. Определение
  3. Ключевые отличия
  4. Вывод

Сравнительная таблица

Основа для сравненияУДАЛЯТЬDROP
основнойУДАЛИТЬ удалить некоторые или все кортежи из таблицы.DROP может удалить всю схему, таблицу, домен или ограничения из базы данных.
языкDELETE - это команда языка манипулирования данными.DROP - это команда языка определения данных.
пунктПредложение WHERE может использоваться вместе с командой DELETE.Предложение не используется вместе с командой DROP.
отменаДействия, выполняемые DELETE, можно откатить.Действия, выполняемые DROP, не могут быть отменены.
КосмосДаже если вы удалите все кортежи таблицы, используя DELETE, пространство, занимаемое таблицей в памяти, не освобождается.Таблица, удаленная с помощью DROP, освобождает табличное пространство из памяти.


Определение DELETE

УДАЛИТЬ Язык манипулирования данными (DDL) команда. Команда DELETE используется, когда вы хотите удалить несколько или все кортежи из отношения. Если ГДЕ Предложение используется вместе с командой DELETE, оно удаляет только те кортежи, которые удовлетворяют условию предложения WHERE.

Если предложение WHERE отсутствует в операторе DELETE, то по умолчанию все кортежи удаляются из отношения, хотя отношение, содержащее эти кортежи, все еще существует в схеме. Вы не можете удалить всю связь, домены или ограничения, используя команду DELETE.

Синтаксис команды DELETE следующий:

УДАЛИТЬ ОТ ОТНОШЕНИЯ

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


Чтобы сохранить ссылочную целостность, DELETE имеет две поведенческие опции, RESTRICT а также CASCADE, RESTRICT отклоняет удаление кортежа, если на него ссылается кортеж из другой таблицы. CASCADE позволяет удалить ссылочный кортеж, который ссылается на удаляемый кортеж.

Определение капли

DROP это Язык определения данных (DDL) команда. Команда DROP удаляет именованные элементы схемы, например связи, домены или ограниченияВы можете даже удалить весь схема используя команду DROP.

Синтаксис команды DROP следующий:

DROP SCHEMA имя_схемы RESTRICT;

DROP Таблица table_name CASCADE;

Команда DROP имеет две поведенческие опции, названные CASCADE а также RESTRICT, Когда CASCADE используется для удаления схемы, он удаляет все связанные элементы, такие как все отношения в схеме, домены и ограничения.

Когда вы используете CASCADE для удаления отношения (таблицы) из схемы, тогда он удаляет все ограничения, представления, а также элементы, которые ссылаются на удаляемое отношение.

Если вы DROP схемы с помощью RESTRICT, то команда DROP выполняется только в том случае, если в элементе нет элементов схема осталось. Если вы отбрасываете таблицу с помощью RESTRICT, команда DROP будет выполняться, только если в стол осталось.

Ключевые различия между DELETE и DROP в SQL

  1. Команда DELETE используется для удаления некоторых или всех кортежей из таблицы. С другой стороны, команда DROP используется для удаления схемы, таблицы, домена или ограничений из базы данных.
  2. DELETE - это команда языка манипулирования данными, тогда как DROP - это команда языка определения данных.
  3. DELETE может использоваться вместе с предложением WHERE, но DROP не используется вместе с какой-либо командой.
  4. Действия, выполняемые командой DELETE, можно откатить, но не в случае команды DROP.
  5. Поскольку команда DELETE не удаляет таблицу, следовательно, свободное место не освобождается, тогда как DROP удаляет всю таблицу, освобождая пространство памяти.


Вывод:

Команда DELETE используется для удаления строк внутри таблицы, а команда DROP - для удаления самой таблицы.