ホームページ >データベース >mysql チュートリアル >PHP を使用して .sql ファイルを MySQL に安全にインポートするにはどうすればよいですか?
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 サイトの他の関連記事を参照してください。