MySQL Запрос DELETE: как удалить строку из таблицы

Что такое запрос DELETE?

MySQL Удалить Команда используется для удаления ненужных строк из таблиц базы данных. Он удаляет всю строку из таблицы и возвращает количество удаленных строк. Команда «Удалить» пригодится для удаления временных или устаревших данных из вашей базы данных.

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

После удаления строки в MySQL строка была удалена, ее невозможно восстановить. Поэтому настоятельно рекомендуется сделать резервные копии базы данных перед удалением любых данных из базы данных. Это может позволить вам восстановить базу данных и просмотреть данные позже, если это потребуется.

Как удалить строку в MySQL

Чтобы удалить строку в MySQLиспользуется оператор DELETE FROM:

DELETE FROM `table_name` [WHERE condition];

ВОТ

  • DELETE FROM `table_name` сообщает MySQL сервер для удаления строк из таблицы..
  • [Условие WHERE] является необязательным и используется для установки фильтра, ограничивающего количество строк, на которые влияет синтаксис DELETE. MySQL запрос строки.

Если же линия индикатора Предложение WHERE не используется в MySQL УДАЛИТЬ запрос, то все строки в данной таблице будут удалены.

Пример MySQL Удалить запрос

Прежде чем мы перейдем к более подробному обсуждению оператора SQL DELETE, давайте вставим несколько примеров данных в таблицу фильмов, чтобы с ними можно было работать.

INSERT INTO  `movies` (`title`, `director`, `year_released`, `category_id`) VALUES ('The Great Dictator', 'Chalie Chaplie', 1920, 7);
INSERT INTO `movies` (`title`, `director`, `category_id`) VALUES ('sample movie', 'Anonymous', 8);
INSERT INTO  movies (`title`, `director`, `year_released`, `category_id`) VALUES ('movie 3', 'John Brown', 1920, 8);

Выполнение приведенного выше сценария добавляет три (3) фильма в таблицу фильмов. Прежде чем мы продолжим наш урок, давайте соберем все фильмы в нашу таблицу. Сценарий, показанный ниже, делает это.

SELECT * FROM `movies`;

Выполнение приведенного выше сценария дает нам следующие результаты.

movie_id title director year_released category_id
1 Pirates of the Caribean 4 Rob Marshall 2011 1
2 Forgetting Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Code Name Black Edgar Jimz 2010 NULL
5 Daddy's Little Girls NULL 2007 8
6 Angels and Demons NULL 2007 6
7 Davinci Code NULL 2007 6
9 Honey mooners John Schultz 2005 8
16 67% Guilty NULL 2012 NULL
18 The Great Dictator Chalie Chaplie 1920 7
19 sample movie Anonymous NULL 8
20 movie 3 John Brown 1920 8

Предположим, что видеотека Myflix больше не желает сдавать в аренду «Великого диктатора» своим участникам и они хотят удалить его из базы данных. Его идентификатор фильма — 18, мы можем использовать скрипт, показанный ниже, чтобы удалить строку из таблицы. MySQL пример.

DELETE FROM `movies` WHERE `movie_id` = 18;

Выполнение приведенного выше сценария в MySQL Верстак против Myflix удаляет фильм с идентификатором 18 из таблицы базы данных.

Давайте посмотрим текущий статус таблицы фильмов.

SELECT * FROM `movies`;
movie_id title director year_released category_id
1 Pirates of the Caribean 4 Rob Marshall 2011 1
2 Forgetting Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Code Name Black Edgar Jimz 2010 NULL
5 Daddy's Little Girls NULL 2007 8
6 Angels and Demons NULL 2007 6
7 Davinci Code NULL 2007 6
9 Honey mooners John Schultz 2005 8
16 67% Guilty NULL 2012 NULL
19 sample movie Anonymous NULL 8
20 movie 3 John Brown 1920 8

ПРИМЕЧАНИЕ:

  • фильм с идентификатором 18 не был возвращен в наборе результатов запроса.
  • вы не можете удалить ни один столбец таблицы. Вы можете удалить целую строку.

Допустим, у нас есть список фильмов, которые мы хотим удалить. Мы можем использовать предложение WHERE вместе с IN.

DELETE FROM `movies` WHERE `movie_id`  IN (20,21);

Выполнение приведенного выше сценария удаляет фильмы с идентификаторами 20 и 21 из нашей таблицы фильмов.

Итого

  • Команда Удалить в MySQL, используется для удаления из таблицы данных, которые больше не требуются.
  • «Предложение WHERE» используется для ограничения количества строк, на которые влияет запрос DELETE. MySQL команда.
  • После удаления данных их невозможно восстановить, поэтому настоятельно рекомендуется сделать резервные копии перед удалением данных.