在我的表格中,我有两列和其他列。这两列属于DATETIME
类型,其值由前一个程序员设置为0000-00-00 00:00:00
。现在我只想添加int数据类型的列。但是,每次我在phpMyAdmin中单击“保存”时,都会显示前两个表的默认值无效。
所以我点击其中一个将默认设置为无,即registerDate
和LastLoginDate
列。每当我点击registerDate
上的保存时,它都会显示LastLoginDate
的默认值无效,每当我点击LastLoginDate
上的保存时,它都会显示registerDate
的默认值无效。基本上我只是无法更改这两列中的默认值,也无法添加任何其他列。
我确实提到了这些,但他们在某种程度上无助于解决我的问题:
MySQL default datetime through phpmyadmin
MySQL - Cannot insert NULL value in column, but I have a default value specified?
答案 0 :(得分:1)
可能会启用no_zero_date and strict sql modes的组合(取决于您的确切MySQL版本),从而阻止MySQL将'0000-00-00'
用作默认值。我会使用SET SESSION sql_mode = '...';
命令禁用严格的sql模式(但请注意确切的sql模式设置),然后我会更改表不使用默认的零日期,然后你可以恢复sql模式设置。 / p>