Ist es möglich, alle Tabellen in MySQL-Datenbank abzuschneiden? Was ist eine Abfrage dafür?alle Tabellen in Mysql-Datenbank abschneiden
Antwort
Sie können diese Abfrage tun:
select 'truncate table ' || table_name || ';'
from INFORMATION_SCHEMA.TABLES;
Dann Ergebnisse zu einem Skript speichern und ausführen.
Andere Möglichkeit könnte sein,
- Führen Sie die Abfrage
- Kopieren Sie die Ergebnisse in die Zwischenablage (COPY)
- Fügen Sie die Ergebnisse in die MySQL-Kommandointerpreter (PASTE)
Erledigt.
Wenn Sie nur die Abfrage ausführen, werden Sie verstehen, was ich zu sagen versuche.
Entschuldigung, aber ich kann Ihre Aussage nicht verstehen, Ergebnisse in einem Skript speichern und ausführen. – chetan
OK, mach das. Ich werde die Frage aktualisieren. –
Nicht möglich mit einer einzigen SQL-Abfrage.
Was wahrscheinlich eine gute Sache ist. –
aus @Pablo Rohren Fortsetzung waren nicht für mich verketten - und ich wollte es auf eine einzige Datenbank beschränken und dann nur Tabellen
SELECT CONCAT('truncate table ',table_name,';')
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = '<<YOUR-DB-NAME>>'
AND TABLE_TYPE = 'BASE TABLE';
Ich hatte das gleiche Problem, dass Pipes nicht verkettet (MySQL 5.6.15). Das hat für mich funktioniert. – nagu
Hier lasse ich euch eine gespeicherte Prozedur Ihre Datenbank zurückgesetzt Cero
CREATE DEFINER=`root`@`localhost` PROCEDURE `reset_database`(DB_NAME VARCHAR(100))
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE tableName VARCHAR(100);
DECLARE cur CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.tables WHERE table_schema = DB_NAME AND table_type = 'BASE TABLE';
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN cur;
SET FOREIGN_KEY_CHECKS = 0;
read_loop: LOOP
FETCH cur INTO tableName;
IF done THEN LEAVE read_loop; END IF;
SET @s = CONCAT('truncate table ',tableName);
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
END LOOP;
SET FOREIGN_KEY_CHECKS = 1;
CLOSE cur;
END;
- 1. Tabellen in Datenbanken abschneiden Gespeicherte T-SQL-Prozedur
- 2. sql - Wie kann ich mehrere Tabellen in MySql abschneiden?
- 3. Alle Tabellen abschneiden (die meisten haben Einschränkungen). Wie man sie vorübergehend fallen lässt
- 4. Knex-Tabelle mit Fremdschlüsseleinschränkungen abschneiden
- 5. Text in d3 abschneiden
- 6. Datei abschneiden
- 7. alle Arten in Tabellen/Tabellen-ähnliche Sätze in Nim
- 8. ORMLite alle Tabellen zurücksetzen
- 9. Verwenden tablediff alle Tabellen
- 10. JFreechart: Abschneiden in Blasendiagrammen verhindern
- 11. Storyboard Dauer Abschneiden Animation
- 12. Stdin Linienlänge abschneiden?
- 13. CGImageCreateWithImageInRect das Abschneiden
- 14. NLog automatische Abschneiden Nachrichten
- 15. Kamera Abschneiden Szene
- 16. Abschneiden chinesischen Text
- 17. Abschneiden Datensatz nach Maximalwert
- 18. Bootstrap Drop-Down-Abschneiden
- 19. Abschneiden Ellipse ohne Breite
- 20. Verknüpfen Sie alle verwandten Tabellen in SQLAlchemy
- 21. Alle Tabellen außer einem in MySql löschen
- 22. Alle Tabellen in postgresql auflisten information_schema
- 23. Drop Datenbankschema und alle Tabellen in OracleXE
- 24. zeige alle nicht leeren Tabellen in Postgres
- 25. Alter alle Tabellen in der Datenbank
- 26. Wut auf alle Tabellen auf
- 27. Alle Tabellen auf einmal reparieren
- 28. Datenbanktabellenänderung zeigt alle zugehörigen Tabellen
- 29. Abschneiden vor SqlBulkCopy
- 30. RecyclerView Abschneiden letzten Artikel
möglich Duplikat [Kürzt alle Tabellen in einer MySQL-Datenbank in einem Befehl?] (Http://stackoverflow.com/questions/1912813/truncate-all-tables-in-a-mysql-database -in-one-command) –