首頁 >資料庫 >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