Різниця між DELETE та DROP у SQL

Автор: Laura McKinney
Дата Створення: 1 Квітень 2021
Дата Оновлення: 5 Травень 2024
Anonim
SQL или noSQL разница
Відеоролик: SQL или noSQL разница

Зміст


DELETE і DROP - це команди, які використовуються для видалення елементів бази даних. Команда DELETE - це команда мови маніпуляції даними, тоді як, DROP - це команда мови визначення даних. Справа, яка відрізняє команди DELETE і DROP, полягає в тому УДАЛИТИ використовується для вилучення кортежів із столу та ДРОП використовується для видалення всієї схеми, таблиці, домену або обмежень із бази даних. Обговоримо ще кілька відмінностей між командою DELETE та DROP в SQL за допомогою таблиці порівняння нижче.

Вміст: ВИДАЛИТИ ПРО ДРОП

  1. Порівняльна діаграма
  2. Визначення
  3. Ключові відмінності
  4. Висновок

Порівняльна діаграма

Основа для порівнянняУДАЛИТИДРОП
ОсновніВИДАЛИТИ видалити деякі або всі кортежі зі столу.DROP може видалити із бази даних всю схему, таблицю, домен або обмеження.
МоваDELETE - команда Мова маніпуляції даними.DROP - команда мови визначення даних.
СтаттяWHERE пункт може використовуватися разом із командою DELETE.Жодне застереження не використовується разом із командою DROP.
ВідкатДії, які виконує DELETE, можна повернути назад.Дії, які виконує DROP, не можна відкинути.
КосмосНавіть якщо ви видалите всі кортежі таблиці за допомогою DELETE, простір, який займає таблиця в пам'яті, не звільняється.Таблиця, видалена за допомогою DROP, звільняє простір таблиці з пам'яті.


Визначення DELETE

DELETE - це Мова маніпуляції даними (DDL) команда. Команда DELETE використовується, коли потрібно видалити деякі або всі кортежі від відношення. Якщо ДЕ Стаття використовується разом із командою DELETE, вона видаляє лише ті кортежі, які відповідають умові пропозиції WHERE.

Якщо в операторі DELETE відсутній пункт WHERE, то за замовчуванням всі кортежі видаляються із співвідношення, хоча відношення, що містить ці кортежі, все ще існує у схемі. Не можна видалити ціле відношення, домени чи обмеження за допомогою команди DELETE.

Синтаксис команди DELETE такий:

ВІДКЛЮЧИТИ ВІД rela_name WHERE умова;

Якщо ви зв’яжете дві таблиці за допомогою зовнішній ключ та видаліть кортеж із посилальної таблиці, тоді автоматично кортеж із таблиці посилань також буде видалений для того, щоб підтримувати референтна цілісність.


Для підтримки референтної цілісності DELETE має два варіанти поведінки, ОБМЕЖЕННЯ і КАСКАД. RESTRICT відхиляє видалення кортежу, якщо на нього посилається посилання кортежу в іншій таблиці. CASCADE дозволяє видалити референтний кортеж, який посилається на кордон, який видаляється.

Визначення DROP

ДРОП - це Мова визначення даних (DDL) команда. Команда DROP видаляє названі елементи на зразок схеми відносини, домени або обмеження, ви можете навіть видалити ціле схема за допомогою команди DROP.

Синтаксис команди DROP такий:

DROP SCHEMA schema_name RESTRICT;

DROP Таблиця_назва CASCADE;

Команда DROP має два варіанти поведінки КАСКАД і ОБМЕЖЕННЯ. Коли 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 - для видалення всієї таблиці.