здесь, потому что я знаю здесь
SELECT Concat('TRUNCATE TABLE ',table_schema,'.',TABLE_NAME, ';')
FROM INFORMATION_SCHEMA.TABLES where table_schema in ('databasename1','databasename2');
Если не удается удалить или обновить родительскую строку: ограничение внешнего ключа не выполняется
Это происходит, если существуют таблицы с ссылками на внешние ключи к таблице, которую вы пытаетесь удалить / усечь.
Перед усечением таблиц Все, что вам нужно сделать, это:
SET FOREIGN_KEY_CHECKS=0;
Обрежьте свои таблицы и измените их обратно на
SET FOREIGN_KEY_CHECKS=1;
используйте этот php код
$truncate = mysql_query("SELECT Concat('TRUNCATE TABLE ',table_schema,'.',TABLE_NAME, ';') as tables_query FROM INFORMATION_SCHEMA.TABLES where table_schema in ('databasename')");
while($truncateRow=mysql_fetch_assoc($truncate)){
mysql_query($truncateRow['tables_query']);
}
?>
проверьте подробности здесь
ссылка