Aktueller Standort: Startseite> Neueste Artikel> So erhalten Sie Warninformationen für die letzte Operation über MySQLI :: get_warnings

So erhalten Sie Warninformationen für die letzte Operation über MySQLI :: get_warnings

gitbox 2025-06-03

Bei der Verwendung von MySQL -Datenbank in PHP achten wir häufig darauf, ob die Abfrage erfolgreich ausgeführt wird. Manchmal, obwohl die Abfrage erfolgreich ausgeführt wird, kann sie von Warninformationen wie Datenverschmutzung, Fehlpaarungsmeldungen von Feldtypen usw. begleitet werden.

Die MySQLI -Erweiterung von PHP bietet eine Methode get_warnings () , die speziell verwendet wird, um Warninformationen zu erhalten, die durch den neuesten Datenbankvorgang generiert werden. In diesem Artikel werden die Nutzungsszenarien und spezifischen Verwendungen dieser Methode im Detail eingeführt, um die Warnungen für Datenbankwarnungen besser zu erfassen und zu verarbeiten.


Was ist MySQLI :: get_warnings?

Mysqli :: get_warnings () ist eine Methode der MySQLI -Klasse, die ein mySQLI_WARNING -Objekt zurückgibt, das alle Warnungen enthält, die durch den neuesten Datenbankvorgang generiert werden. Durch Durchqueren dieses Objekts können Sie den Fehlercode und die Details für jede Warnung abrufen.

Diese Methode ist besonders für SQL-Anweisungen geeignet, die potenzielle Probleme haben, obwohl die Ausführung erfolgreich ist, z.


So verwenden Sie MySQLI :: get_warnings ()

Das Folgende ist ein einfaches Beispiel, um die Verwendung von MySQLI :: get_warnings () zu demonstrieren. Angenommen, Sie fügen extra lange Daten in ein Zeichenfolgenfeld ein, das eine Längengrenze definiert, eine Warnung wird ausgelöst.

 <?php
// Stellen Sie eine Verbindung zur Datenbank her
$mysqli = new mysqli('gitbox.net', 'username', 'password', 'testdb');

if ($mysqli->connect_errno) {
    die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}

// Erstellen Sie eine Beispieltabelle
$mysqli->query("CREATE TABLE IF NOT EXISTS test_warning (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(5)
)");

// Extra lange Zeichenfolge einfügen,Warnung auslösen
$mysqli->query("INSERT INTO test_warning (name) VALUES ('Testketten jenseits der Länge')");

// Warninformationen erhalten
$warnings = $mysqli->get_warnings();

if ($warnings) {
    do {
        printf("Warncode: %d, Information: %s\n", $warnings->errno, $warnings->message);
    } while ($warnings->next());
} else {
    echo "无警告Information。\n";
}

// Schließen Sie die Verbindung
$mysqli->close();
?>

Im obigen Code:

  • Wir haben eine Zeichenfolge eingefügt, die die Feldlängengrenze überschreitet. MySQL wird die Einführung durchführen, aber die Zeichenfolge abschneiden, was zu einer Warnung führt.

  • Verwenden Sie $ MySQLI-> get_warnings (), um das Warnobjekt zu erhalten.

  • Durch die Aufzeichnung $ Warnings-> Next () in einer Schleife durch alle Warnungen und Ausgabedetails.


Wann man MySQLI :: get_warnings () verwendet

  • Warnprüfung, wenn Daten eingefügt oder aktualisiert werden <br> Wenn Sie strenge Anforderungen an die Gültigkeit Ihrer Daten haben, können Sie Warnmeldungen bei der Erkennung potenzieller Datenverlust oder Formatfehler erkennen.

  • Debugging Complex SQL Operations <br> Einige komplexe Abfragen oder gespeicherte Verfahren können Warnungen zurückgeben, und die Verwendung dieser Methode kann zum Debuggen helfen.

  • Protokollierung und Überwachung <br> Nehmen Sie automatisch Warnungen und schreiben Sie sie an das Protokoll und unterstützen Sie den Betriebs- und Wartungspersonal, um die Datenbankausnahmen rechtzeitig zu ermitteln.


Zusammenfassen

MySQLI :: get_warnings () ist ein sehr praktisches Instrument, mit dem Sie Warnungen erfassen und umgehen können, die die Ergebnisse des Betriebs nicht beeinflussen, sondern die Qualität der Daten beeinflussen können. Wenn Sie rational rational sind, können Sie Ihre Bewerbung robuster und stabiler machen.

Weitere Tipps zur Verwendung von PHP und MySQL finden Sie unter https://gitbox.net für die neuesten Tutorials und Beispiele.