![](/img/trans.png)
[英]In Laravel application, mysql import transforms timestamp null values to 0000-00-00 00:00:00
[英]MySQL - Select and Update existing wrong 0 Values (0000-00-00 00:00:00) to Correct DateTime Values
現有的“ DateTime”列中的DateTime值不正確。
值是“ 0000-00-00 00:00:00”。
因此,因此我以這種方式更改了我的表:
ALTER TABLE `my_table` MODIFY `my_datetime` DATETIME DEFAULT NULL;
現在,我想將錯誤的值更新為NULL。
但是此查詢不起作用:
UPDATE `my_table`
SET `my_datetime` = NULL
WHERE `my_datetime` = '0000-00-00 00:00:00'
我收到此錯誤消息:
datetime值不正確:第1行的“ my_datetime”列為“ 0000-00-00 00:00:00”
但是,如果我嘗試選擇值,則會得到結果。
SELECT * FROM `my_table`
WHERE `my_datetime` = '0000-00-00 00:00:00'
因此,如何將所有錯誤的值更新為NULL?
可以使用ALLOW_INVALID_DATES,因為Mysql 5.7非常嚴格。
SET sql_mode = 'ALLOW_INVALID_DATES';
UPDATE my_table
SET my_datetime = NULL
WHERE my_datetime = '0000-00-00 00:00:00';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.