当将日期结构从datetime更改为VARCHAR时,mysql错误1064


mysql error 1064 when changing structure of date from datetime to VARCHAR

有一个问题,当我试图改变一个表的结构在mysql它是用户数据库表,有很多字段其中一个是注册日期字段

它目前被设置为datetime,我试图使用phpmyAdmin将其更改为VARCHAR,因为这是我所知道的使用我有限的mysql/phpmyAdmin专业知识的唯一最佳方法。

ALTER TABLE  abnhd_user CHANGE  registerDate  registerDate VARCHAR NOT NULL DEFAULT '0000-00-00 00:00:00'

当我尝试将它从datetime更改为VARCHAR时,我得到以下错误

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOT NULL DEFAULT '0000-00-00 00:00:00'' at line 1

您执行了查询

ALTER TABLE  abnhd_user CHANGE  registerDate  registerDate VARCHAR NOT NULL DEFAULT '0000-00-00 00:00:00'

MySQL没有VARCHAR的默认值'0000-00-00 00:00:00',所以在SQL下面使用更改为VARCHAR

ALTER TABLE abnhd_user MODIFY registerDate VARCHAR(30);