Mengimport Fail .sql ke dalam Pangkalan Data MySQL Menggunakan PHP
Apabila cuba mengimport fail .sql ke dalam pangkalan data MySQL melalui PHP, anda mungkin menghadapi ralat: "Terdapat ralat semasa import. Sila pastikan fail import disimpan dalam folder yang sama dengan skrip ini dan semak nilai anda.". Ralat ini biasanya timbul disebabkan sambungan MySQL yang ditamatkan atau penggunaan yang salah.
Pelanjutan mysql_* yang tidak digunakan telah dialih keluar dalam PHP 7.0.0, menjadikannya tidak tersedia untuk digunakan. Seperti yang dicadangkan dalam dokumentasi PHP, adalah disyorkan untuk menggunakan sambungan mysqli atau PDO_MySQL sebagai alternatif.
Sebagai alternatif, anda boleh menggunakan coretan kod berikut untuk mengimport fail .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>
Pendekatan ini bersambung ke pelayan MySQL, memilih pangkalan data dan berulang melalui fail .sql baris demi baris, melaksanakan pertanyaan yang dihadapi. Ia menyediakan pengendalian ralat dan mencetak mesej kejayaan apabila import berjaya.
Atas ialah kandungan terperinci Bagaimana untuk Mengimport Fail .sql ke dalam Pangkalan Data MySQL Menggunakan PHP Tanpa Menghadapi Ralat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!