sql >> Database teknologi >  >> RDS >> Mysql

Sådan tømmes alle rækker fra alle tabeller i mysql (i sql)

TRUNCATE tableName;

Dette vil tømme indholdet af tabellen.

Rediger som svar på Q-edit:Det ser ud til fra min hurtige test, at du bliver nødt til at lave mindst 2 forespørgsler, da det ser ud til, at "vis tabeller" ikke kan bruges som en underforespørgsel, jeg ved ikke, hvordan man gør dette i bash så her er et PHP eksempel, forhåbentlig vil det hjælpe.

<?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]);
}
?>

Dette kræver som minimum noget fejlhåndtering.



  1. PDO::forespørgsel vs. PDOStatement::execute (PHP og MySQL)

  2. Sådan omdøbes en tabel i SQL

  3. Script til at dræbe alle forbindelser til en database (mere end RESTRICTED_USER ROLLBACK)

  4. Doctrine2 - Multiple insert i ét skud