CodeIgniter 3 日期类型的表字段和空条目

问题描述 投票:0回答:1

我正在开发 Codeigniter3 项目,其中有几个带有指定日期字段的数据库表。 日期字段标记为 null,默认值也为 null。

当我向表中插入新记录时,我只是避免“接触”该字段,因此 mysql 会自动将条目 NULL 添加到日期字段。

但是,当此日期字段包含某些日期(不为空)时,并且由于某种原因用户想要删除此条目并将此字段设置回空,mysql 将输入 0000-00-00 而不是 NULL。

有人遇到类似问题并找到解决方案吗?

我尝试了几种解决方案,例如:

$data = array ('fld_date_from' => NULL,); (在我的控制器中 - 尝试使用引号,“false”选项也 - 不起作用),

尝试在模型中将 SET 字段设置为空命令 - 不起作用

还尝试了我在 StackOverflow 和 CI3 文档中找到的其他一些解决方案。

字段更新后每一位都输入0000-00-00,没有一位为NULL。

datefield
1个回答
0
投票

一种解决方案可能是使用以下查询来设置数据库表的 SQL 模式:

SET sql_mode = 'NO_ZERO_DATE';

请参阅此相关问题服务器 SQL 模式指南了解更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.