首頁 >資料庫 >mysql教程 >如何正確地將 NULL 值指派給 MySQL 中的日期時間欄位?

如何正確地將 NULL 值指派給 MySQL 中的日期時間欄位?

Susan Sarandon
Susan Sarandon原創
2024-11-28 20:27:11631瀏覽

How to Properly Assign NULL Values to Datetime Fields in MySQL?

如何處理 MySQL 日期時間欄位中的 NULL 值

MySQL 接受日期時間欄位中的 NULL 值,儘管存在常見的誤解。要將 NULL 值指派給日期時間字段,只需將變數留空或明確傳送 NULL 值即可。

使用MySQL 插入NULL 值

CREATE TABLE datetimetest (testcolumn DATETIME NULL DEFAULT NULL);
INSERT INTO datetimetest (testcolumn) VALUES (NULL);

使用PHP 準備好的語句插入NULL 值

使用準備好的語句時語句,照常綁定變數。包含 NULL 值的 PHP 變數將在 MySQL 中儲存為 NULL。

$stmt = $conn->prepare("UPDATE users SET bill_date = ? WHERE user_id = ?");

if (isset($bill_date)) {
    $stmt->bind_param("si", $bill_date, $user_id);
} else {
    $stmt->bind_param("si", NULL, $user_id);
}

PHP 空變數注意事項

確保 PHP 變數包含 NULL,而不是空字串。空字串將導致錯誤:

Incorrect datetime value: '' for column 'bill_date' at row 1

因此,明確發送 NULL 或將變數留空以避免此問題。

以上是如何正確地將 NULL 值指派給 MySQL 中的日期時間欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn