Bei Untertabellen wird die Datentabelle zyklisch gelöscht.
Angenommen, es gibt die Tabellen student0 - student99.
Wäre es nicht sinnlos, sie manuell zu löschen?
1. Gespeicherte Prozeduren anzeigen
SHOW PROCEDURE STATUS;
2. Verwenden Sie die gespeicherte Prozedurschleife, um die Datentabelle zu löschen
DROP PROCEDURE if exists truncateTable;
delimiter $$
CREATE PROCEDURE truncateTable()
BEGIN
DECLARE i INT DEFAULT 0;
while i <= 99
do
SET @tablename = CONCAT("student", i);
SET @sqlstring = CONCAT("truncate table ", @tablename);
PREPARE stmt FROM @sqlstring;
EXECUTE stmt;
SET i = i + 1;
END while;
END$$
delimiter ;
CALL truncateTable();
DROP PROCEDURE truncateTable;