Заменяет ли импорт файла .sql на MySQL существующий db или добавляет к нему?
В некоторых случаях мне приходилось делать mysqldump для создания файла .sql. После внесения некоторых изменений в базу данных MySQL для тестирования и разработки я хочу восстановить ее так, как раньше. Поэтому я импортирую файл .sql. Раньше я удалял db и воссоздавал его, а затем импортировал. Это необходимо? Заменяет ли импорт из .sql файла и полностью воссоздает базу данных и ее таблицы или добавляет к ней? Спасибо!
Ответы
Ответ 1
Это зависит от того, какие команды содержит файл SQL. Представляющие интерес команды:
DROP DATABASE xxx; # will delete the whole database
DROP TABLE xxx; # unconditionally deletes a table
CREATE TABLE [IF NOT EXISTS] # if IF NOT EXISTS adds the table, does nothing if exists
# otherwise, it adds the table, gives an error if it exists
Ответ 2
Добавляет к нему, если только файл импорта не обрабатывает таблицы по-разному.