.sql文件中的PDO运行脚本

时间:2019-03-19 19:19:19

标签: php mysql pdo php-7.2

如何正确运行要插入MySQL的sql文件? 尝试使用PDO:

$mysql_host = "localhost";
$mysql_database = "planets_test";
$mysql_user = "root";
$mysql_password = "";
# MySQL with PDO_MYSQL
$dbh= new PDO("mysql:host=$mysql_host;dbname=$mysql_database", $mysql_user, $mysql_password);
$query = file_get_contents("planets_db.sql");
$stmt = $dbh->prepare($query);
$stmt->execute();

哪里是planets_db.sql”脚本生成的PHPmyAdmin?

脚本未返回错误,但未创建表。

2 个答案:

答案 0 :(得分:0)

由于这是一个脚本,因此您可以使用以下代码执行SQL:

try {
     $mysql_host = "localhost";
     $mysql_database = "planets_test";
     $mysql_user = "root";
     $mysql_password = "";
     $dbh= new PDO("mysql:host=$mysql_host;dbname=$mysql_database", $mysql_user, $mysql_password);
     $dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
     $query = file_get_contents("planets_db.sql");
     $dbh->exec($query);
     print("Created $table Table.\n");

} catch(PDOException $e) {
    echo $e->getMessage();//Remove or change message in production code
}

如果有错误,应该告诉您出了什么问题。

答案 1 :(得分:-1)

我在PC上检查了您的代码。没有发现任何错误。请在同一目录中检查您的SQL文件,或者它是正确的SQL文件。