繁体   English   中英

Mysql:Set 0000-00-00为null

[英]Mysql: Set 0000-00-00 to null

我已经找到如何设置NULL为datetime与0000-00-00 00:00:00值? 这正是我的问题 - 然而,它不起作用。

colum'bezahltDatum'是一个可以为空的日期字段 在此输入图像描述

查询

SELECT id,bezahltDatum FROM `officeBuch` WHERE  bezahltDatum = '0000-00-00'

给出25个结果并且正在运行。

但是,当我尝试将'0000-00-00'转换为null时

UPDATE `officeBuch` SET bezahltDatum = null WHERE bezahltDatum = '0000-00-00'

然后我收到一条错误消息

#1292 - 日期值不正确:第1行第'bezahltDatum'列的'0000-00-00'

在此输入图像描述

为什么这不起作用,我该如何解决? 我使用phpMyAdmin版本4.7.2和Mysql 5.7.18-0ubuntu0.16.04.1

我能想到的唯一方法就是暂时改变SQL模式

SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION'; 

在实际更新声明之前。 这将暂时禁用严格模式,不应出现错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM