mysql如何捉到,删除数据库中的数据,但是表结构保留
每个表都清空数据,但是各个表的字段都保留。
请问有20个表的话,就必须把说有的表名引用一遍?
写20遍?
delete from tablename1;
delete from tablename20;
阿神2017-04-17 15:33:58
<?php
//用循环执行SQL,瞬间帮帮你删除干净了,即使是100张表 也是瞬间
for($i=0;$i<=20;$i++)
{
$sql = 'DELETE FROM tableName'.$i;
$db->query($sql);
}
伊谢尔伦2017-04-17 15:33:58
运行这个语句,会生成指定数据库的所有表删除语句,拿着这个结果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
黄舟2017-04-17 15:33:58
mysql -uroot test -e "show tables" > all_table.md
然后用vim或者sublime编辑all_table.md在前面统一加上delete from