mysql - 删除数据库中的数据,但是表结构保留
问题描述
mysql如何捉到,删除数据库中的数据,但是表结构保留每个表都清空数据,但是各个表的字段都保留。请问有20个表的话,就必须把说有的表名引用一遍?写20遍?delete from tablename1;delete from tablename20;
问题解答
回答1:<?php//用循环执行SQL,瞬间帮帮你删除干净了,即使是100张表 也是瞬间for($i=0;$i<=20;$i++){ $sql = ’DELETE FROM tableName’.$i; $db->query($sql);}回答2:
运行这个语句,会生成指定数据库的所有表删除语句,拿着这个结果query即可,注意替换你的数据库名
SELECT Group_concat(a.sql_truncate, a.sql_truncate, ’’) AS sql_truncate FROM (SELECT Concat(’truncate table ’, table_name, ’;’) AS sql_truncate FROM information_schema.tables WHERE table_schema = ’你的数据库名’AND table_type = ’BASE TABLE’) AS a
truncate table table_name
回答3:mysql -uroot test -e 'show tables' > all_table.md然后用vim或者sublime编辑all_table.md在前面统一加上delete from 回答4:
写存储过程读取table名 循环执行删除delete from tablename;
回答5:导出表结构,删除数据库。重建
回答6:drop user 用户名 cascade级连删除用户下面的所有数据
回答7:别用delete,用truncate吧