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

Автор: Laura McKinney
Дата создания: 2 Апрель 2021
Дата обновления: 13 Май 2024
Anonim
В чем разница между паллиативным лечением и хосписом? А.Л. Пылёв
Видео: В чем разница между паллиативным лечением и хосписом? А.Л. Пылёв

Содержание

Главное отличие

DELETE и TRUNCATE - это два термина, используемые в языке структурированных запросов (SQL) для удаления записи или данных из таблицы. Хотя конечный результат обеих команд одинаков, но есть также некоторые различия между этими двумя, которые важно понять. Основное различие между DELETE и TRUNCATE заключается в том, что DELTE - это команда языка манипулирования данными (DML), а TRUNCATE - это команда языка определения данных (DDL).


Что такое TRUNCATE?

TRUNCATE также является зарегистрированной операцией. Инструкция TRUNCATE TABLE - это команда DDL в SQL, которая отмечает экстенты таблицы для освобождения. В результате этой операции все данные из таблицы удаляются мгновенно, как правило, в обход ряда механизмов обеспечения целостности. Он был введен в стандарт SQL: 2008. Оператор «TRUNCATE TABLE mytable» логически эквивалентен оператору «DELETE FROM mytable» без предложения «WHERE». «TRUNCATE TABLE» мгновенно удаляет все данные в таблице, освобождая страницы данных, используемые таблицей. Это снижает затраты ресурсов на регистрацию удалений, а также количество необходимых блокировок. Мы не можем указывать условие «WHERE» в выражении «TRUNCATE TABLE», так как оно является «все или ничего».

Что такое УДАЛИТЬ?

В SQL базы данных DELETE означает оператор, который удаляет одну или несколько записей или данных из таблицы. Подмножество может быть определено для удаления / удаления, используя условие для удаления всех записей. Некоторые системы управления базами данных (СУБД), такие как MySQL, позволяют удалять строки из различных таблиц с помощью одного оператора DELETE, который также называется DELETE для нескольких таблиц. Синтаксис оператора DELETE: DELETE FROM table_name , Теперь любая строка, соответствующая условию «ГДЕ», будет удалена из таблицы. Если в операторе отсутствует предложение «WHERE», все строки в таблице удаляются. Таким образом, оператор «DELETE» следует использовать с осторожностью. Более того, оператор DELETE не возвращает никаких строк; то есть он не будет генерировать набор результатов.


Ключевые отличия

  1. DELETE - это команда языка управления данными (DML), а TRUNCATE - команда языка определения данных (DDL).
  2. TRUNCATE намного быстрее по сравнению с DELETE, поскольку он мгновенно удаляет все данные.
  3. Условие "ГДЕ" требуется в УДАЛИТЬ. , Если в операторе отсутствует предложение «WHERE», все строки в таблице удаляются. Но мы не можем указать условие «WHERE» в выражении «TRUNCATE TABLE», так как оно есть все или ничего.
  4. DELETE удаляет некоторые или все строки из таблицы, а TRUNCATE удаляет все строки.
  5. DELETE вызывает срабатывание всех триггеров DELETE в таблице, когда триггеры не запускаются во время операции TRUNCATE, потому что это не применимо к отдельным строкам.
  6. Удалить можно использовать с индексированными представлениями, а TRUNCATE нельзя использовать с индексированными представлениями.
  7. DELETE выполняется с использованием блокировки строк, и каждая строка в таблице блокируется для удаления, в то время как TRUNCATE выполняется с использованием блокировки таблицы, и вся таблица блокируется для удаления всех записей.

припой Припой (или в Северной Америке) - это легкоплавкий металлический сплав, используемый для создания постоянной связи между металлическими деталями. Слово «припой» происходит от средне...

почтительное отношение Уважение (также называемое подчинением или пассивностью) является условием подчинения любимому законному влиянию вышестоящих или вышестоящих. Уважение подразумевает уступку ил...

Рекомендуем