Heim > Backend-Entwicklung > PHP-Tutorial > Wie importiere ich eine .sql-Datei mit PHP in eine MySQL-Datenbank, ohne dass Fehler auftreten?

Wie importiere ich eine .sql-Datei mit PHP in eine MySQL-Datenbank, ohne dass Fehler auftreten?

Linda Hamilton
Freigeben: 2024-10-31 10:45:02
Original
891 Leute haben es durchsucht

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

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>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage