Heim >Datenbank >MySQL-Tutorial >Wie gehe ich mit NULL-Werten in MySQL-Datetime-Feldern um?
Problembeschreibung:
Beim Versuch, NULL-Werte in Datetime-Feldern zu speichern In MySQL können Benutzer auf Probleme stoßen, die zu Fehlermeldungen wie „Falscher Datum/Uhrzeit-Wert:“ für die Spalte führen 'bill_date'".
Lösung:
Entgegen manchen Missverständnissen unterstützt MySQL NULL-Werte in Datums-/Uhrzeitfeldern. Um das Problem beim Aktualisieren von Datensätzen mit PHP zu beheben, stellen Sie sicher, dass die Variable, die den NULL-Wert enthält, korrekt übergeben wird.
PHP-Variablenbindung:
Bei Verwendung vorbereiteter Anweisungen binden die PHP-Variable, die einen NULL-Wert enthält, zum entsprechenden SQL-Abfrageparameter. Dadurch wird sichergestellt, dass der NULL-Wert korrekt in der Datenbank gespeichert wird.
NULL vs. leere Zeichenfolge:
Stellen Sie sicher, dass die PHP-Variable tatsächlich NULL enthält und nicht leer ist Zeichenfolge. MySQL interpretiert leere Zeichenfolgen als leere Datumsangaben, was zu Fehlern führen kann.
Beispielcode:
Der folgende PHP-Codeausschnitt zeigt, wie man einen NULL-Wert korrekt an a bindet datetime-Feld mithilfe einer vorbereiteten Anweisung:
$stmt = $conn->prepare("UPDATE table SET bill_date = ? WHERE id = ?"); $stmt->bind_param("si", $nullDate, $id); $nullDate = NULL; $id = 1; $stmt->execute();
Beachten Sie, dass $nullDate explizit auf NULL gesetzt ist. Durch sorgfältiges Binden von PHP-Variablen, die NULL-Werte enthalten, können Sie NULL effektiv in Datums-/Uhrzeitfeldern in MySQL speichern.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit NULL-Werten in MySQL-Datetime-Feldern um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!