3 способа удалениях всех таблицы в базе данных MySQL, MariaDB
Часто возникает вопрос, как удалить все таблицы в базе данных MySQL, MariaDB. Ниже рассмотрим несколько вариантов.
В общем случае удалить таблицы из базы данных можно командой в консоли mysql:
Если у вас таблиц десятки и сотни, очевидно, что вручную их указывать неудобно. Ниже рассмотрим несколько вариантов удаления.
1 способ
Просто удаляем базу данных. Пользователя удаляемой базы данных создавать заново не надо, все его права сохранятся. И потом импортируем как обычно.
2 способ
В SQL запросе ниже замените testdb на имя базы данных, которую вы хотите удалить. Будет сгенерирован пакет операторов SQL, вам нужно снова запустить набор результатов, которые удалят все таблицы без удаления базы данных.
В консоли вы получите такой набор команд:
3 способ
Выше 2 способа позволяли удалять таблицы из консоли mysql, но если у вас установлен phpmyadmin, тогда проще удалить через него.
Friendhosting — Разумные цены на хостинг
VDS/VPS сервер от 3.49€ в месяц. Много ресурсов. Высокая надежность. Гибкое управление. Удобная оплата. Настройка под вас!
Антидетект браузер Dolphin бесплатно до 10 профилей
Dolphin разработан для работы с такими сложными ресурсов, как Google, Facebook и Coinlist.
Английский для IT‑специалистов по Skype
Персональные занятия по разумным ценам. 80% разговорной практики. Персональный график!
How to remove all MySQL tables from the command-line without DROP database permissions? [duplicate]
How do I drop all tables in Windows MySQL, using command prompt? The reason I want to do this is that our user has access to the database drops, but no access to re-creating the database itself, for this reason we must drop the tables manually. Is there a way to drop all the tables at once? Bear in mind that most of the tables are linked with foreign keys so they would have to be dropped in a specific order.
5 Answers 5
You can generate statement like this: DROP TABLE t1, t2, t3, . and then use prepared statements to execute it:
![]()
The @Devart’s version is correct, but here are some improvements to avoid having error. I’ve edited the @Devart’s answer, but it was not accepted.
This script will not raise error with NULL result in case when you already deleted all tables in the database by adding at least one nonexistent — «dummy» table.
And it fixed in case when you have many tables.
And This small change to drop all view exist in the Database
It assumes that you run the script from Database you want to delete. Or run this before:
Простые советы в примерах по PHP, MySQL, HTML, CSS, JS и LINUX
Простые советы разработки сайтов и приложений. Вы найдете ответы на вопросы, которые нельзя найти где-то ещё.
Удалить все таблицы в базе данных Mysql | Drop all tables in mysql
- Получить ссылку
- Электронная почта
- Другие приложения
Всем привет! Сегодня я вам кратко расскажу, как удалить все таблицы разом в MySQL, не удаляя базу данных.
alt=»Блог Михаила Григорьева» />
19 Сен 2017 16:09:40 |
0 comments
Как удалить все таблицы из БД PostgreSQL и MySQL ?
Многие конечно не будут заморачиваться удалением таблиц и удалят и создадут заново базу, это удобно если у Вас только один пользователь имеет доступ к БД с простыми набором правами, но пользователей много, то удаление может быть не самой хорошей идеей.
Итак как удалить все таблицы из БД PostgreSQL и MySQL читаем ниже…
Удаление всех таблиц в БД для PostgreSQL:
1. Сохраняем список таблиц в файл:
2. Удаляем таблицы:
,где
PGUSER — имя пользователя
PGDBNAME — имя БД в которой нужно удалить все таблицы
Удаление всех таблиц в БД для MySQL:
,где в переменных
DB — база в которой нужно удалить все таблицы
USER и PASSWD — логин и пароль пользователя у которого есть полные права на базу из переменной DB в которой нужно удалить все таблицы.
Так же получить список таблиц в БД можно через INFORMATION_SCHEMA и тогда запрос удаления всех таблиц будет такой:
Если при удалении таблиц у нас появляется ошибка:
ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails
то перед удалением нужно отключить проверку на Foreign Key командой: SET FOREIGN_KEY_CHECKS=0;
а потом включить: SET FOREIGN_KEY_CHECKS=1;
Таким образом полная команда удаления всех таблиц из БД будет такого вида:
На этом все, до скорых встреч. Если у Вас возникли вопросы или Вы хотите чтобы я помог Вам, то Вы всегда можете связаться со мной разными доступными способами.