sql >> Base de Datos >  >> RDS >> Mysql

Cómo vaciar todas las filas de todas las tablas en mysql (en sql)

TRUNCATE tableName;

Esto vaciará el contenido de la tabla.

Edite en respuesta a la edición Q:parece, según mi prueba rápida, que tendrá que hacer al menos 2 consultas, ya que parece que "mostrar tablas" no se puede usar como una subconsulta, no sé cómo hacer esto en bash así que aquí hay un ejemplo de PHP, espero que ayude.

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

Como mínimo, esto necesita un manejo de errores.