mySQL: command to truncate all tables
我正在使用MySQL。
什么是截断我的数据库的所有表的mysql命令?
我的意思是什么是mysql命令,它清空我的数据库中的所有表不会丢弃所有表。
试试这里找到的代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | DELIMITER $$ CREATE PROCEDURE TruncateTables() BEGIN DECLARE done BOOL DEFAULT FALSE; DECLARE truncate_command VARCHAR(512); DECLARE truncate_cur CURSOR FOR /*This is the query which selects the tables we want to truncate*/ SELECT CONCAT('TRUNCATE TABLE ',table_name) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME LIKE 'prefix_%'; DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = TRUE; OPEN truncate_cur; truncate_loop: LOOP FETCH truncate_cur INTO truncate_command; SET @truncate_command = truncate_command; IF done THEN CLOSE truncate_cur; LEAVE truncate_loop; END IF; /*Main part - preparing and executing the statement*/ PREPARE truncate_command_stmt FROM @truncate_command; EXECUTE truncate_command_stmt; END LOOP; END$$ DELIMITER ; |
我最喜欢的方式是使用Navicat。
使用ControlA检查所有表。 然后右键单击并选择"截断表"。