Heim >Datenbank >MySQL-Tutorial >Wie gehe ich mit NULL-Werten in MySQL-Datetime-Feldern um?

Wie gehe ich mit NULL-Werten in MySQL-Datetime-Feldern um?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-24 13:24:12238Durchsuche

How to Handle NULL Values in MySQL Datetime Fields?

Verarbeitung von NULL-Werten in Datetime-Feldern in MySQL

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!

Stellungnahme:
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