Aktueller Standort: Startseite> Neueste Artikel> Wie verwendet ich MySQLI :: $ errno, um SQL -Ausführungsfehler zu erfassen und zu behandeln, um die Robustheit von Datenbankvorgängen sicherzustellen?

Wie verwendet ich MySQLI :: $ errno, um SQL -Ausführungsfehler zu erfassen und zu behandeln, um die Robustheit von Datenbankvorgängen sicherzustellen?

M66 2025-07-28

Die Fehlerbehandlung ist ein entscheidender Schritt bei der Durchführung von Datenbankvorgängen, insbesondere in komplexen Projekten. Wenn Sie die MySQLI -Erweiterung von PHP für Datenbankvorgänge verwenden, sorgt die Erfassung und Behandlung von SQL -Ausführungsfehlern sicher, dass die Stabilität und Robustheit Ihres Programms. In diesem Artikel wird erläutert, wie Sie die Eigenschaft von MySQLI :: $ errno verwenden, um SQL -Fehler zu fangen und zu bewältigen.

1. Was ist MySQLI :: $ errno ?

Mysqli :: $ errno ist eine Eigenschaft in der PHP MySQLI -Erweiterung, um den Fehlercode für die neueste MySQL -Operation zu erhalten. Dieser Fehlercode ist ein ganzzahliger Wert, der den spezifischen Grund für den Fehler der Datenbankoperation darstellt. Durch diese Eigenschaft können Sie die Ursache des Fehlers verstehen und so entscheiden, wie Sie damit umgehen sollen.

Bei der Ausführung von SQL -Anweisungen können Sie auf verschiedene Arten von Fehlern stoßen, z. B. Syntaxfehler, Verbindungsprobleme, Berechtigungsprobleme usw. MySQLI :: $ errno können Ihnen helfen, den spezifischen Code dieser Fehler zu erhalten und die Fehler dann auf gezielte Weise zu behandeln.

2. Beispielcode: Wie fangen und behandeln Sie SQL -Fehler?

Hier ist ein einfaches PHP -Beispiel, das zeigt, wie man MySQLI :: $ errno verwendet, um SQL -Fehler zu fangen und zu bewältigen.

 <?php
// Datenbankverbindung
$mysqli = new mysqli("localhost", "user", "password", "database");

// Überprüfen Sie, ob die Verbindung erfolgreich ist
if ($mysqli->connect_error) {
    die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}

// implementieren SQL Abfrage
$sql = "SELECT * FROM non_existent_table"; // Den Tabellennamen absichtlich geschrieben
$result = $mysqli->query($sql);

// Überprüfen Sie, ob ein Fehler aufgetreten ist
if ($mysqli->errno) {
    echo "SQL Fehlercode: " . $mysqli->errno . "<br>";
    echo "Fehlermeldung: " . $mysqli->error . "<br>";
    // 根据Fehlercode处理错误
    if ($mysqli->errno == 1146) {
        echo "Die Tabelle existiert nicht,Bitte überprüfen Sie den Tabellennamen!<br>";
    } else {
        echo "Ein weiterer Fehler trat auf,Bitte wenden Sie sich an den Administrator!<br>";
    }
} else {
    // Normale Verarbeitungsergebnisse
    while ($row = $result->fetch_assoc()) {
        echo "ID: " . $row['id'] . " - Name: " . $row['name'] . "<br>";
    }
}

// 关闭Datenbankverbindung
$mysqli->close();
?>

3.. Code Parsing

  • Datenbankverbindung : Erstens erstellen wir eine Verbindung zur Datenbank über New MySQLI () und überprüfen, ob die Verbindung erfolgreich ist. Wenn die Verbindung fehlschlägt, wird die Fehlermeldung mithilfe der Funktion Die () ausgegeben und das Skript beendet.

  • SQL-Abfrageausführung : Als nächstes führen wir eine absichtlich falsche SQL-Abfrage mit einem nicht existierenden Tabellennamen aus.

  • Fehlerprüfung : Nach der Ausführung der Abfrage verwenden wir $ MySQLi-> errno, um zu überprüfen, ob ein SQL-Fehler aufgetreten ist. Wenn ein Fehler auftritt, gibt $ mysqli-> errno einen Fehlercode ungleich Null zurück. Mit MySQLI :: $ errno können wir den spezifischen Fehlercode erwerben und auf der Grundlage dieses Code geeignete Maßnahmen ergreifen.

  • Fehlerbehandlung : Gemäß dem Fehlercode können wir eine angepasste Fehlerbehandlung durchführen. Wenn der Fehlercode beispielsweise 1146 ist (gibt an, dass die Tabelle nicht vorhanden ist), geben wir die entsprechende Eingabeaufforderung an.

4. Gemeinsame MySQL -Fehlercodes

Hier sind einige gemeinsame MySQL -Fehlercodes:

  • 1045 : Zugriff verweigert und gibt einen Fehler in Benutzername oder Kennwort an.

  • 1146 : Die Tabelle existiert nicht.

  • 1064 : SQL -Syntaxfehler (Syntaxfehler in SQL).

  • 2002 : Eine Verbindung zum MySQL -Server kann keine Verbindung hergestellt werden.

Abhängig vom spezifischen Fehlercode können Sie Fehler auf gezielte Weise verarbeiten, z. B. Fehlerprotokolle, Benachrichtigung von Administratoren oder das Anzeigen benutzerfreundlicher Fehlermeldungen.

5. Die Bedeutung der Fehlerbehandlung

In der tatsächlichen Entwicklung ist die Behandlung von Datenbankfehlern der Schlüssel zur Gewährleistung der Systemstabilität. Wenn der Datenbankfehler nicht verarbeitet wird, kann das Programm zur Laufzeit abstürzen, was zu Datenverlust oder Systemverfügbarkeit führt. Diese Probleme können effektiv vermieden werden, indem SQL -Fehler aufgenommen und angemessen behandelt werden. Sie können beispielsweise detaillierte Fehlerinformationen festlegen, wenn ein Fehler auftritt, oder prägnante und freundliche Fehlereinschaltungen auf der Benutzerseite anzeigen.

6. Zusammenfassung

Durch die Verwendung von MySQLI :: $ errno zum Erfassen und Umgang mit SQL -Fehlern können wir die Robustheit von Datenbankvorgängen sicherstellen und Abstürze oder Datenprobleme durch Fehler reduzieren. Während des Entwicklungsprozesses kann ein guter Fehlerbehebung den Entwicklern nicht nur dabei helfen, Probleme schneller zu finden, sondern auch die Benutzererfahrung zu verbessern und das System stabiler und sicherer zu machen.

Das obige ist eine detaillierte Einführung in die Verwendung von MySQLI :: $ errno , um SQL -Fehler zu erfassen und zu bewältigen. Ich hoffe, dieser Artikel kann Ihnen helfen, besser zu verstehen, wie Sie Fehler in den Datenbankoperationen behandeln und die Robustheit Ihres Programms verbessern können. Wenn Sie Fragen haben, können Sie gerne fragen!