chcę upuścić wiele tabel z łatwością bez faktycznie wymieniając nazwy tabeli w zapytaniu rozwijanej i stoły mają zostać usunięte mają przedrostek powiedzieć „wp_”MySQL: jak upuścić wiele tabel za pomocą pojedynczego zapytania?
Odpowiedz
Wystarczy dzielić jedno z rozwiązań:
mysql> SELECT CONCAT( "DROP TABLE ",
GROUP_CONCAT(TABLE_NAME) ) AS stmtFROM information_schema.TABLES
WHERE TABLE_SCHEMA = "your_db_name" AND TABLE_NAME LIKE "ur condition" into outfile '/tmp/a.txt';
mysql> source /tmp/a.txt;
Użyłem zapytania bardzo podobnego do zapytania Angelina. Jeśli masz więcej niż kilka tabel, musisz zwiększyć maksymalną długość group_concat
. W przeciwnym razie zapytanie będzie barf na obcięty ciąg, który zwraca group_concat
.
To moje 10 centów:
-- Increase memory to avoid truncating string, adjust according to your needs
SET group_concat_max_len = 1024 * 1024 * 10;
-- Generate drop command and assign to variable
SELECT CONCAT('DROP TABLE ',GROUP_CONCAT(CONCAT(table_schema,'.',table_name)),';') INTO @dropcmd FROM information_schema.tables WHERE table_schema='databasename' AND table_name LIKE 'my_table%';
-- Drop tables
PREPARE str FROM @dropcmd; EXECUTE str; DEALLOCATE PREPARE str;
+1 Zgadzam się ze scenariuszem –
Dziękuję za to - bez wzrostu group_concat_max_len, odpowiedź Angelina nigdy by nie zadziałała w moim scenariuszu. –
+1 dla nieużywania zmiennej n pliku n deallocating –
Proste rozwiązanie bez ryzyka błędu:
mysqldump
stworzyć plik zawierający DROP
komenda jak
DROP TABLE IF EXISTS `wp_matable`;
a 'grep
' z " DROP TABLE wp_
"podaj nam polecenia do wykonania
więc spadek jest przez linie tezy trhee (można edytować drop.sql aby sprawdzić, które tabele byłyby spadła przed)
mysqldump -u user -p database > dump.sql
grep "DROP TABLE `wp_" dump.sql > drop.sql
mysql -u user -p database < drop.sql
Usunięcie jednej tabeli w MySQL:
DROP TABLE TABLE_NAME;
Dla doskonałym rozwiązaniem mysqldump lepiej jest użyć opcji --skip-cytując nazw
mysqldump --skip-quote-names -u user -p database > dump.sql
grep "DROP TABLE wp_" dump.sql > drop.sql
mysql -u user -p database < drop.sql
pozbyć backticks w nazwach tabel. Część grep nie będzie działać w niektórych środowiskach z backtickami.
Bądź ostrożny z "_", muszą być pisane z "\" przed MySQL jak:
SELECT CONCAT('DROP TABLE',GROUP_CONCAT(CONCAT(table_schema,'.',table_name)),';') INTO @dropcmd FROM information_schema.tables WHERE table_schema='databasename' AND table_name LIKE '**my\\_table**%';
idź do C: \ xampp \ mysql \ data \ folder
zaznaczyć kilka tabele, które chcesz usunąć, a następnie naciśnij przycisk usuń
Dzięki
To powoduje, że oryginalny plakat używa XAMPP i jest zainstalowany w tym katalogu. –
- 1. Grafit: wiele serii za pomocą pojedynczego polecenia
- 2. Jak upuścić całą tabelę w MySQL?
- 3. Jak znaleźć poprzedni i następny rekord za pomocą pojedynczego zapytania w MySQL?
- 4. Jak upuścić unikalny w MySQL?
- 5. możemy wstawić do dwóch tabel za pomocą pojedynczego polecenia sql?
- 6. jak upuścić kolumnę, jeśli istnieje w mysql?
- 7. Jak otworzyć wiele linków za pomocą pojedynczego znacznika zakotwiczenia?
- 8. Jak odwzorować jedną klasę na wiele tabel za pomocą SQLAlchemy?
- 9. Jak dodać prefiks wszystkich tabel w mysql
- 10. Jak iterować wiersz za pomocą zapytania mysql w php
- 11. Uzyskaj wszystkie nazwy tabel dla określonej bazy danych za pomocą zapytania SQL?
- 12. Scal: modyfikuj wiele tabel
- 13. eksportowanie wielu tabel dostępu do pojedynczego XML
- 14. Aktualizacja za pomocą dwóch tabel?
- 15. Jak upuścić bazę danych MongoDB za pomocą PyMongo?
- 16. XAMPP/MySQL: nie można otworzyć pojedynczego pliku obszaru tabel. \ Mysql \ innodb_index_stats.ibd po ponownym uruchomieniu MySQL
- 17. Jak upuścić listę tabel SQL Server, ignorując ograniczenia?
- 18. Najprostszy sposób buforowania wyników zapytania MySQL za pomocą PHP?
- 19. Wybieranie pojedynczego wiersza w MySQL
- 20. Obsługa tabel za pomocą jQuery
- 21. Równoczesne wstawianie za pomocą MySQL
- 22. Zapobieganie wyświetlaniu pojedynczego zapytania w dzienniku powolnego zapytania
- 23. Jak zapytać wiele tabel w SQLAlchemy ORM
- 24. Wszystkie wstawione identyfikatory podczas wstawiania wielu wierszy za pomocą pojedynczego zapytania
- 25. pojedynczego zapytania usunąć i wyświetlić zduplikowane rekordy
- 26. wiele tagów pojedynczego skryptu
- 27. MySQL - Jak wstawić do wielu tabel z kluczy obcych
- 28. Aktualizacja wielu tabel w Oracle
- 29. Tworzenie tabel i pobieranie wyników zapytania za pomocą złącza biznesowego Dynamics AX 2009
- 30. MySQL - Dołącz do 2 tabel
mogę wiedzieć dlaczego ve głosowanie –
Podobne pytanie - http://stackoverflow.com/questions/4958424/mysql-question-on-dropping- tabele/54301 04 # 5430104 – Devart