ホームページ >データベース >mysql チュートリアル >PHP を使用して .sql ファイルを MySQL に安全にインポートするにはどうすればよいですか?

PHP を使用して .sql ファイルを MySQL に安全にインポートするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-06 21:20:13459ブラウズ

How Can I Safely Import a .sql File into MySQL Using PHP?

PHP を使用して .sql ファイルを MySQL データベースにインポートする

PHP を使用して .sql ファイルを MySQL データベースにインポートしようとすると、多くの場合、インポート中に問題を報告するエラー メッセージが表示されます。このエラー メッセージには、データベース名、ユーザー名、パスワード、ホスト名、インポート ファイル名に関する詳細が含まれています。

質問で提供されているコードは、PHP 5.5.0 では非推奨になっている mysql_* 関数を利用しています。 PHP 7.0.0 では削除されました。代わりに、mysqli や PDO_MySQL などの代替 MySQL API を使用する必要があります。

MySQL クライアントを使用した代替インポート方法

ファイル インポート プロセスを MySQL クライアントに委任するのは、通常、より信頼性の高いアプローチ。 MySQL は、インポートを効率的に処理できるコマンドライン ツールを提供します。

.sql ファイルをインポートするための改良された PHP コード

より適切なインポート方法を使用した代替 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';

// Establish MySQL connection
$mysqli = new mysqli($mysql_host, $mysql_username, $mysql_password, $mysql_database);
if ($mysqli->connect_error) {
    echo 'Error connecting to MySQL: ' . $mysqli->connect_error;
    exit;
}

// Read entire file
$lines = file($filename);

// Process each line
foreach ($lines as $line) {
    // Skip comments and empty lines
    if (substr($line, 0, 2) == '--' || $line == '') {
        continue;
    }

    // Execute query
    if ($mysqli->query($line)) {
        echo 'Query successfully executed: ' . $line . '<br>';
    } else {
        echo 'Error executing query: ' . $line . '<br>';
    }
}
echo 'Tables imported successfully';
$mysqli->close();

?>

この改良されたコードは、mysqli 拡張機能を利用して MySQL に接続し、 .sql ファイルから行ごとにクエリを実行します。

以上がPHP を使用して .sql ファイルを MySQL に安全にインポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。