mysql - 刪除數(shù)據(jù)庫(kù)中的數(shù)據(jù),但是表結(jié)構(gòu)保留
問(wèn)題描述
mysql如何捉到,刪除數(shù)據(jù)庫(kù)中的數(shù)據(jù),但是表結(jié)構(gòu)保留每個(gè)表都清空數(shù)據(jù),但是各個(gè)表的字段都保留。請(qǐng)問(wèn)有20個(gè)表的話,就必須把說(shuō)有的表名引用一遍?寫20遍?delete from tablename1;delete from tablename20;
問(wèn)題解答
回答1:<?php//用循環(huán)執(zhí)行SQL,瞬間幫幫你刪除干凈了,即使是100張表 也是瞬間for($i=0;$i<=20;$i++){ $sql = ’DELETE FROM tableName’.$i; $db->query($sql);}回答2:
運(yùn)行這個(gè)語(yǔ)句,會(huì)生成指定數(shù)據(jù)庫(kù)的所有表刪除語(yǔ)句,拿著這個(gè)結(jié)果query即可,注意替換你的數(shù)據(jù)庫(kù)名
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 = ’你的數(shù)據(jù)庫(kù)名’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在前面統(tǒng)一加上delete from 回答4:
寫存儲(chǔ)過(guò)程讀取table名 循環(huán)執(zhí)行刪除delete from tablename;
回答5:導(dǎo)出表結(jié)構(gòu),刪除數(shù)據(jù)庫(kù)。重建
回答6:drop user 用戶名 cascade級(jí)連刪除用戶下面的所有數(shù)據(jù)
回答7:別用delete,用truncate吧
