Разница между усечением и удалением

Создание данных и манипулирование ими составляют основу баз данных, и мы называем их как DDL и DML соответственно. DDL - это аббревиатура для языка определения данных. Он может создавать или изменять структуры данных в базах данных, и их нельзя использовать для изменения данных, представленных в таблицах. Например, у нас есть команды, которые просто создают таблицу с указанными атрибутами таблицы, но никогда не добавляют строки в таблицу. Но DML, язык манипулирования данными, способен добавлять, удалять или изменять данные в таблицах. Как правило, команды DDL работают со структурами таблиц, а команды DML - с фактическими данными. Пусть так, почему мы просто отклоняемся от темы «Разница между усечением и удалением»? Есть причины, по которым мы говорили о DML и DDL. Вы бы поняли это в предстоящей дискуссии.

Что такое команда усечения?

Цель команды Truncate - удалить всю таблицу. Поэтому, когда вы используете команду Truncate, вы потеряете все данные в таблице, и вы должны быть осторожны при ее использовании. Дайте нам знать, как его использовать.

Синтаксис усечения:

TRUNCATE TABLE имя-таблицы;

Здесь вы должны указать имя таблицы, которую следует удалить в целом. Это гарантирует, что в области памяти будет любая таблица. Вот пример использования Truncate.

Ниже приведена таблица «сотрудник» и просто посмотрите на строки данных в ней.

EMP-идентификатор EMP-имя обозначение
1011 разъем клерк
1012 румяный Администратор
+1014 Нэнси финансов

Теперь давайте выполним приведенную ниже команду для таблицы сотрудников.

TRUNCATE TABLE сотрудник;

Вот результат приведенного выше синтаксиса и в нем нет данных.

EMP-идентификатор EMP-имя обозначение

Что такое команда удаления?

Цель команды Delete - удалить указанные строки из таблицы. Здесь выражение «Где» используется здесь для указания строк, которые необходимо удалить. Когда мы не указываем строки, команда удаляет все строки в таблице. Просто посмотрите на синтаксис этого.

УДАЛИТЬ ИЗ сотрудник;

Приведенный выше синтаксис удаляет все строки из таблицы «employee». Таким образом, результирующая таблица не будет содержать данных.

УДАЛИТЬ ИЗ сотрудник ГДЕ emp-id = 1011;

Этот оператор просто удаляет одну строку, чей emp-id равен 1011. Таким образом, результирующая таблица будет такой, как показано ниже.

EMP-идентификатор EMP-имя обозначение
1012 румяный Администратор
+1014 Нэнси финансов

Отличия:

  • Усечение является DDL; Удалить - это DML: Выше мы обсуждали, как работают DDL и DML в нашем обсуждении выше. Команда Truncate является DDL и работает на уровне структуры данных. Но Delete - это команда DML, которая работает с данными таблицы. Другими примерами для DDL являются CREATE и ALTER. Аналогичным образом можно сказать, что такие команды, как SELECT, UPDATE и INSERT, являются идеальными примерами для DML..
  • Как работает усечение и удаление: Как только мы запускаем команду Truncate, она просто ищет указанную таблицу. Затем он полностью удаляет все данные из памяти. Но рабочая процедура немного отличается в случае удаления. Здесь исходные данные таблицы копируются в пространство, называемое пространством «Откат», перед тем, как выполнять фактическую обработку данных. Затем вносятся изменения в фактическое пространство табличных данных. Таким образом, они оба отличаются тем, как они работают.

Округление -> удалить все данные из таблицы -> табличное пространство теперь освобождается.

удалять -> Скопировать исходные данные таблицы в пространство отката -> удалить указанные данные / всю таблицу -> Табличное пространство освобождено, но пространство отката заполнено.

  • Откат: Откат - это как команда «Отменить» в наших аксессуарах Microsoft. Он используется для отмены изменений, которые мы недавно сделали, т. Е. С последней сохраненной точки. Чтобы выполнить операцию, данные должны быть скопированы в пространство отката перед редактированием. Хотя эти откаты требуют дополнительной памяти, они очень полезны для возврата к оригиналу. Особенно, когда вы редактируете по ошибке! Давайте теперь перейдем к Обрезать и Удалить в отношении Откат. Как мы уже говорили выше, Truncate никогда не использует пространство отката, и мы не смогли вернуться к исходным данным. Но команда Delete использует откат, и мы могли бы просто использовать «Commit» или «RollBack», чтобы принять или отменить изменения соответственно.
  • Триггеры: Для тех, кто нуждается в объяснении триггеров, вот небольшая заметка. Триггеры - это заранее заданный набор операций / операций, которые следует активировать, когда таблица сталкивается с определенным условием. Например, мы можем инициировать изменение суммы заработной платы, если опыт сотрудника в компании превышает год. Эти триггеры могут работать и на других таблицах. Например, мы могли бы обновить таблицу финансов, как только для сотрудника будет повышен уровень заработной платы..

Truncate - это команда DDL, триггер здесь не разрешен. Но Delete - это команда DML, здесь разрешены триггеры..

  • Который быстрее? Как вы уже догадались, команда Truncate будет быстрее, чем команда Delete. Первый может удалить все данные, и нет необходимости проверять соответствие условий. Кроме того, исходные данные не копируются в пространство отката, что экономит много времени. Эти два фактора заставляют Truncate работать быстрее, чем Delete.
  • Можем ли мы использовать предложение WHERE? Предложение «Где» используется для указания определенных условий соответствия и не имеет ничего общего с усечением. Так как Truncate никогда не ищет какие-либо условия соответствия и просто удаляет все строки, мы не могли бы использовать здесь выражение «Где». Но мы всегда можем указать условие с помощью предложения where в команде Delete..
  • Который занимает больше места? Усечение не собирается использовать пространство отката, и оно сохраняет эту память. Но для удаления требуется резервная копия в виде пространства отката, и, следовательно, для нее требуется больше памяти, чем для усечения..

Таковы различия, и давайте посмотрим в табличной форме.

S.No Отличия в Округление удалять
1. DDL или DML? Это DDL, и он работает на уровне структуры данных. Другими примерами для DDL являются CREATE и ALTER.. Это команда DML, которая работает с данными таблицы. DML обозначает язык манипулирования данными. Такие команды, как SELECT, UPDATE и INSERT, являются прекрасными примерами для DML. DML расшифровывается как язык манипулирования данными.

2. Как это работает? Как только мы запускаем команду Truncate, она просто ищет указанную таблицу. Затем он полностью удаляет все данные из памяти. Здесь исходные данные таблицы копируются в пространство, называемое пространством «Откат», перед тем, как выполнять фактическую обработку данных. Затем вносятся изменения в фактическое пространство табличных данных..
3. RollBack Команда Truncate никогда не использует пространство отката, и мы не смогли вернуться к исходным данным. Пространство отката является эксклюзивным и используется при выполнении команд DML. Команда Delete использует откат, и мы могли бы просто использовать «Commit» или «RollBack», чтобы принять или отменить изменения соответственно.

4. Триггеры Truncate - это команда DDL, триггеры не допускаются. Удалить - это команда DML, триггеры разрешены здесь.

5. Который быстрее? Он может удалить все данные, и нет необходимости проверять наличие каких-либо условий. Кроме того, исходные данные не копируются в пространство отката, что экономит много времени. Эти два фактора заставляют Truncate работать быстрее, чем Delete.

Он использует пространство отката, и на нем всегда должны быть сохранены исходные данные. Это дополнительное бремя и, в свою очередь, занимает больше времени, чем усечение.
6. Можем ли мы использовать предложение WHERE? Так как Truncate никогда не ищет никаких подходящих условий и просто удаляет все строки, мы не могли использовать здесь выражение «Где». Но мы всегда можем указать условие с помощью предложения where в команде Delete..
7. Который занимает больше места? Усечение не собирается использовать пространство отката и сохраняет эту память. Требуется резервное копирование в виде пространства отката и, следовательно, требуется больше памяти, чем урезать.

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