如何在MySQL中删除数据库中所有表的所有行?

4
我有一个近500张表的数据库,想要删除所有表中的所有记录。该如何实现?

你想要删除所有表格还是仅仅截断表格中的数据? - Nick
@Nick 只想截断所有的表 - Rajasekar
3个回答

7
最简单的方法是使用以下 shell 命令删除并重新创建数据库结构:
mysqldump -d dbname > structure.sql
mysqladmin drop dbname
mysqladmin create dbname
mysql dbname < structure.sql

根据需要插入mysql凭证,例如 -u root -psecret -h localhost


3
TRUNCATE tableName;

这将清空表格的内容。请查看此处

<?php
mysql_connect('localhost', 'user', 'password');
$dbName = "database";
mysql_select_db($dbName)
$result_t = mysql_query("SHOW TABLES");
while($row = mysql_fetch_assoc($result_t))
{
   mysql_query("TRUNCATE " . $row['Tables_in_' . $dbName]);
}
?>

只需重复500次... ;) - Juha Untinen

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接