Что делает флажок «Добавить DROP TABLE / VIEW / PROCEDURE / FUNCTION» в phpmyadmin? - PullRequest
14 голосов
/ 03 мая 2010

На вкладке структуры при экспорте базы данных с использованием phpmyadmin установлен флажок:
Add DROP TABLE / VIEW / PROCEDURE / FUNCTION Что это делает?

Ответы [ 2 ]

24 голосов
/ 03 мая 2010

При создании таблицы, представления, процедуры или функции перед ней добавляется оператор DROP. В результате этого, даже если элемент существует, он все равно будет создан.

Например: если у вас есть таблица с именем users и вы запускаете сценарий экспорта без флажка DROP, он попытается снова создать таблицу users, но потерпит неудачу, поскольку она уже существует. Если вы проверите его, таблица будет удалена до ее создания (если она существует), чтобы гарантировать, что создание всегда будет успешным.

Конечно, это может быть опасно, если в таблице есть данные, которые вы не хотите потерять.

3 голосов
/ 16 апреля 2015

Например: если у вас есть таблица с именем users и вы запускаете сценарий экспорта без флажка DROP, он попытается снова создать таблицу users, но потерпит неудачу, поскольку она уже существует. Если вы проверите его, таблица будет удалена до ее создания (если она существует), чтобы гарантировать, что создание всегда будет успешным.

Я был озадачен тем, что именно означало это утверждение, поэтому я провел дополнительное исследование по этой теме и хотел оставить здесь подробное объяснение для дальнейшего использования.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...