首頁  >  文章  >  後端開發  >  如何使用 PHP 將 .sql 檔案匯入 MySQL 資料庫而不遇到錯誤?

如何使用 PHP 將 .sql 檔案匯入 MySQL 資料庫而不遇到錯誤?

Linda Hamilton
Linda Hamilton原創
2024-10-31 10:45:02817瀏覽

How to Import a .sql File into a MySQL Database Using PHP Without Encountering Errors?

使用PHP 將.sql 檔案匯入MySQL 資料庫

嘗試透過PHP 將.sql 檔案匯入SQL 資料庫時,您可能會遇到錯誤:「匯入期間發生錯誤。請確保匯入檔案與此腳本儲存在同一資料夾中,並檢查您的值。」。此錯誤通常是由於已棄用的 MySQL 擴充功能或不正確的使用而引起的。

已棄用的 mysql_* 擴充功能已在 PHP 7.0.0 中刪除,使其無法使用。根據 PHP 文件中的建議,建議使用 mysqli 或 PDO_MySQL 擴充功能作為替代方案。

或者,您可以使用以下程式碼片段匯入.sql 檔案:

<code class="php"><?php

// File name
$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());

// Declare variables
$templine = '';
$lines = file($filename);

// Iterate through file lines
foreach ($lines as $line) {
    // Ignore comments and empty lines
    if (substr($line, 0, 2) == '--' || $line == '') {
        continue;
    }

    // Append line to temporary query
    $templine .= $line;
    // Check for semicolon to mark end of query
    if (substr(trim($line), -1, 1) == ';') {
        // Execute query and handle errors
        mysql_query($templine) or print('Error performing query \'<strong>' . $templine . '\': ' . mysql_error() . '<br /><br />');
        // Reset temporary query
        $templine = '';
    }
}

// Success message
echo "Tables imported successfully";

?></code>

此方法連接到MySQL 伺服器,選擇資料庫,並逐行迭代.sql 文件,執行遇到的查詢。它提供錯誤處理並在成功導入時列印成功訊息。

以上是如何使用 PHP 將 .sql 檔案匯入 MySQL 資料庫而不遇到錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn