Bei Verwendung von MySQL -Datenbanken in PHP bietet die MySQLI -Erweiterung eine umfassende Funktionalität, um Datenbankvorgänge zu verarbeiten. Mysqli :: get_warnings ist eine der sehr praktischen Funktionen, mit denen Entwickler Warninformationen erhalten können, die nach der Ausführung von SQL -Anweisungen von der Datenbank generiert werden, um besser zu debuggen und zu optimieren. In diesem Artikel werden Sie schnell die grundlegende Verwendung und Vorsichtsmaßnahmen von MySQLI :: get_warnings verstehen.
Die Funktion von MySQLI :: get_warnings wird verwendet, um ein Objekt ( mySQLI_WARNING ) zurückzugeben, das alle von der aktuellen Verbindung generierten Warninformationen enthält. Zum Beispiel gibt es beim Einfügen von Daten eine Datenverschmutzung oder eine Fehlanpassung des Datentyps, aber die SQL -Anweisung selbst hat keine Fehler.
Das Erhalten dieser Warnungen hilft Entwicklern, potenzielle Probleme zu erkennen und Programmausnahmen oder Datenausnahmen zu vermeiden.
Das folgende Beispiel zeigt, wie Sie MySQLI :: get_warnings verwenden, um Warninformationen zu erhalten.
<?php
$mysqli = new mysqli("gitbox.net", "username", "password", "database");
if ($mysqli->connect_error) {
die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}
// Ausführung kann Warnungen erzeugenSQLStellungnahme,Zum Beispiel stimmen Datentypen nicht überein
$sql = "INSERT INTO users (id, name) VALUES (1, 'Zhang San'), (2, 'Li Si'), (3, 'Wang Wu')";
if ($mysqli->query($sql) === TRUE) {
echo "Erfolgreich einfügen\n";
// Warninformationen erhalten
if ($warn = $mysqli->get_warnings()) {
do {
echo "Warnnummer: " . $warn->errno . "\n";
echo "Warnmeldung: " . $warn->message . "\n";
} while ($warn->next());
} else {
echo "Keine Warnung\n";
}
} else {
echo "Fehler: " . $mysqli->error;
}
$mysqli->close();
?>
Mysqli :: get_warnings gibt ein mySQLI_WARNING -Objekt zurück und null , wenn es keine Warnung gibt.
Holen Sie sich den Warncode über $ warn-> errno .
Erhalten Sie die Warnbeschreibung über $ warn-> Nachricht .
Durch alle Warnungen über die $ warn-> Next () -Methode durchführen.
Erfassungswarnungen, wenn Daten eingefügt oder aktualisiert werden <br> Wenn der Feldtyp nicht übereinstimmt oder die Daten abgeschnitten sind, kann die SQL -Anweisung erfolgreich ausgeführt werden, generiert jedoch eine Warnung. Verwenden Sie zu diesem Zeitpunkt Get_Warnings , um diese Informationen zu erfassen.
Debugging Complex SQL -Anweisungen <br> Einige komplexe Abfragen oder Aktualisierungen können Warnungen hervorrufen, z. Die Verwendung dieser Funktion kann dazu beitragen, das Problem zu finden.
Mysqli :: get_warnings ist ein sehr nützliches Debugging -Tool, mit dem Entwickler MySQL -Warnmeldungen erfassen können. Es ist sehr wichtig, potenzielle Datenbankprobleme zu beheben und die Programmstabilität sicherzustellen. Ich hoffe, dass Sie durch die Einführung dieses Artikels die Nutzungsfähigkeiten von MySQLI :: get_warnings schnell beherrschen und die Qualität der PHP -Datenbankprogrammierung verbessern können.