Heim > Artikel > Backend-Entwicklung > Wie importiere ich eine .sql-Datei mit PHP in eine MySQL-Datenbank, ohne dass Fehler auftreten?
Importieren einer .sql-Datei in eine MySQL-Datenbank mit PHP
Wenn Sie versuchen, eine .sql-Datei über PHP in eine MySQL-Datenbank zu importieren, Möglicherweise tritt die Fehlermeldung auf: „Während des Imports ist ein Fehler aufgetreten. Bitte stellen Sie sicher, dass die Importdatei im selben Ordner wie dieses Skript gespeichert ist, und überprüfen Sie Ihre Werte.“ Dieser Fehler tritt typischerweise aufgrund einer veralteten MySQL-Erweiterung oder falscher Verwendung auf.
Die veraltete mysql_*-Erweiterung wurde in PHP 7.0.0 entfernt, sodass sie nicht mehr verwendet werden kann. Wie in der PHP-Dokumentation vorgeschlagen, wird empfohlen, alternativ die Erweiterung mysqli oder PDO_MySQL zu verwenden.
Alternativ können Sie den folgenden Codeausschnitt verwenden, um eine .sql-Datei zu importieren:
<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>
Dieser Ansatz stellt eine Verbindung zum MySQL-Server her, wählt die Datenbank aus und durchläuft die .sql-Datei Zeile für Zeile, wobei die gefundenen Abfragen ausgeführt werden. Es bietet Fehlerbehandlung und gibt bei erfolgreichem Import eine Erfolgsmeldung aus.
Das obige ist der detaillierte Inhalt vonWie importiere ich eine .sql-Datei mit PHP in eine MySQL-Datenbank, ohne dass Fehler auftreten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!