簡體   English   中英

mysql 0000-00-00更新錯誤

[英]mysql 0000-00-00 update error

我正在嘗試將我的日期字段更新為null而不是0000-00-00,但是我出錯了。

 ERROR 1292 (22007): Incorrect date value: '0000-00-00' for column 'rel_date' at row 1

但是我可以單獨更新記錄嗎?

 update table set rel_date = NULL where id = 12;

但是如果我嘗試

update table set rel_date = NULL where rel_date like '%0000%'
or
update table set rel_date = NULL where rel_date = '0000-00-00'
I get ERROR 1292 (22007): Incorrect date value: '0000-00-00' for column 'rel_date' at row 1

模式

id              | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| document_id   | varchar(40)      | NO   | MUL | NULL    |                   |
| revision_date | date             | YES  |     | NULL    |                |
SET sql_mode=(SELECT REPLACE(@@sql_mode,'NO_ZERO_DATE',''));

運行更新命令。 關閉mysql實例或可能添加回當前會話。

SET sql_mode=(SELECT CONCAT(@@sql_mode,',NO_ZERO_DATE'));

我有同樣的問題。 如果表中有一個最小有效日期,假設它是“ 1950-01-01”,則可以執行以下操作:

update table set rel_date = NULL where rel_date < '1950-01-01'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM