데이터베이스를 재설정 할 스크립트를 작성하려고합니다. phpMyAdmin을 사용하여 가져올 수있는 내보내기를 사용하고 있습니다. SQL 파일은 내가 사용하고있는 스크립트와 같은 위치에 있습니다.PHP와 MySQL을 사용하여 데이터베이스 재설정
이 파일을 실행하면 SQL 파일에서 오류가 발생합니다.
<?php
$mysqli = new mysqli('host', 'username', 'password', 'database');
$mysqli->query('SET foreign_key_checks = 0');
if ($result = $mysqli->query("SHOW TABLES"))
{
while($row = $result->fetch_array(MYSQLI_NUM))
{
$mysqli->query('DROP TABLE IF EXISTS '.$row[0]);
}
}
$mysqli->query('SET foreign_key_checks = 1');
$sql_filename = 'clean.sql';
$sql_contents = file_get_contents($sql_filename);
$result = $mysqli->query($sql_contents) or die("Database query failed: ".$mysqli->error);
$mysqli->close();
?>
어떤 오류 너는 받고 있니? – Karl
나는 쿼리 메소드가 한 번에 하나 이상의 쿼리를 실행할 수 있다고 생각하지 않는다. (유니온과 연결되어 있지 않다면) 아마도 clean.sql 파일의 쿼리를 분리하여 각각의 호출에서 하나의 쿼리를 수행해야 할 것이다. mysqli :: query – paranoid