首页  >  问答  >  正文

MySQL:无法解释的日期字段依赖性

我正在尝试更新现有数据库中两个日期字段的默认值。这两个字段的 SHOW CREATE TABLE 的输出是:

`dateIn` date DEFAULT '0000-00-00',
  `dateDue` date DEFAULT '0000-00-00',

但是,当我尝试通过命令行或 phpMyAdmin 更新其中一个字段时,我收到了有关另一字段的错误。

mysql> ALTER TABLE job MODIFY COLUMN dateIn date DEFAULT NULL;
ERROR 1067 (42000): Invalid default value for 'dateDue'

请注意,错误中的字段不是命令中的字段。如何在不破坏数据的情况下解决此问题?

P粉891237912P粉891237912375 天前493

全部回复(1)我来回复

  • P粉538462187

    P粉5384621872023-09-11 09:59:16

    @easleyfixed 使用 MySQL Workbench 的提示解决了问题,因为它精心设计了最佳 SQL,使我能够在同一命令中修改两列。

    ALTER TABLE job
        MODIFY COLUMN dateIn  DATE DEFAULT NULL,
        MODIFY COLUMN dateDue DATE DEFAULT NULL;

    ALTER TABLE 示例

    回复
    0
  • 取消回复