我有一個MySQL類型的日期字段。當我嘗試在PHP中使用以下查詢在此字段中插入任何日期時,它在該字段中存儲了「0000-00-00」。如何在MySQL數據庫中插入日期(y-m-d)?
例如:
UPDATE test SET dob=2000-09-20 WHERE id=3
我有一個MySQL類型的日期字段。當我嘗試在PHP中使用以下查詢在此字段中插入任何日期時,它在該字段中存儲了「0000-00-00」。如何在MySQL數據庫中插入日期(y-m-d)?
例如:
UPDATE test SET dob=2000-09-20 WHERE id=3
只是引用日期。
UPDATE test SET dob='2000-09-20' WHERE id=3
在您的查詢... 2000-09-20 ...
將被解釋爲數學表達式。結果是一個數字,1971年。在日期時間字段中,數字將被填充爲6,8,12或14位數字,因此1971年將變爲001971.該數字將被解釋爲YYMMDD格式,所以它表示「年00月19日71」,這是無效的。因此存儲特殊值0000-00-00
。
ouchhhhhhhhhhhhh – Awan 2010-08-13 07:31:37
通常,您將使用'2000-09-20'
作爲要插入的值。你的系統如何區分你所擁有的和1971年的整數(非日期)值,這是你從2000年減去9和20後得到的值?
UPDATE test SET dob = '2000-09-20' WHERE id = 3
查看here瞭解更多詳情。
2000-09-20 = 1971這不是有效值; – 2010-08-13 07:24:12