首页 >数据库 >mysql教程 >如何使用 PHP 将 .sql 文件导入 MySQL?

如何使用 PHP 将 .sql 文件导入 MySQL?

Susan Sarandon
Susan Sarandon原创
2024-12-18 01:21:17314浏览

How to Import a .sql File into MySQL Using PHP?

如何使用 PHP 将 .sql 文件导入 MySQL 数据库(替代方法)

使用以下命令将 .sql 文件导入 MySQL 数据库在执行数据库迁移或恢复数据时,PHP 可能是一项有用的任务。

要解决代码中的问题,其中即使 .sql 文件位于同一目录中,导入也会失败,建议使用以下替代方法:

// Name of the file
$filename = 'churc.sql';
// MySQL host
$mysql_host = 'localhost';
// MySQL username
$mysql_username = 'root';
// MySQL password
$mysql_password = '';
// Database name
$mysql_database = 'dump';

// Connect to MySQL server
mysql_connect($mysql_host, $mysql_username, $mysql_password) or die('Error connecting to MySQL server: ' . mysql_error());
// Select database
mysql_select_db($mysql_database) or die('Error selecting MySQL database: ' . mysql_error());

// Temporary variable, used to store current query
$templine = '';
// Read in entire file
$lines = file($filename);
// Loop through each line
foreach ($lines as $line) {
    // Skip it if it's a comment
    if (substr($line, 0, 2) == '--' || $line == '') {
        continue;
    }

    // Add this line to the current segment
    $templine .= $line;
    // If it has a semicolon at the end, it's the end of the query
    if (substr(trim($line), -1, 1) == ';') {
        // Perform the query
        mysql_query($templine) or print('Error performing query \'<strong>' . $templine . '\': ' . mysql_error() . '<br /><br />');
        // Reset temp variable to empty
        $templine = '';
    }
}

 echo "Tables imported successfully";

重要说明:

  • 此方法使用已弃用的 mysql_* 函数,为了现代 PHP 的安全性和效率,应将其替换为 mysqli_* 或 PDO
  • 导入过程委托给 MySQL 客户端,这是尽可能的首选方法。
  • 确保填写 $filename、$mysql_host、$mysql_username 的正确值, $mysql_password 和 $mysql_database 根据您的数据库设置。
  • 查看错误消息并确保导入文件的结构正确且具有有效的 SQL声明。

以上是如何使用 PHP 将 .sql 文件导入 MySQL?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn