我已经找到How to set to NULL a datetime with 0000-00-00 00:00:00 value?,这正是我的问题 - 然而,它不起作用。
colum' bezahltDatum'是一个可以为空的日期字段
查询
SELECT id,bezahltDatum FROM `officeBuch` WHERE bezahltDatum = '0000-00-00'
给出25个结果并且正在发挥作用。
然而,当我尝试转换' 0000-00-00'用
取消UPDATE `officeBuch` SET bezahltDatum = null WHERE bezahltDatum = '0000-00-00'
然后我收到错误消息
#1292 - 日期值不正确:' 0000-00-00'专栏' bezahltDatum'在第1行
为什么这不起作用,我该如何解决?我使用的是phpMyAdmin版本4.7.2和Mysql 5.7.18-0ubuntu0.16.04.1
答案 0 :(得分:2)
我能想到的唯一方法就是暂时改变SQL模式
SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION';
在实际更新语句之前。这将暂时禁用严格模式,不应出现错误。