我在表格中添加了一列,但它告诉我我没有为表格的另一列设置默认值;
ALTER TABLE `myDatabase`.`myTable` ADD myNewColumn varchar(2);
给我回复
ERROR 1067 (42000): Invalid default value for 'modifiedDate'
我不知道为什么在我改变表格时需要为列设置默认值?
答案 0 :(得分:0)
问题在于我的表定义,而不是命令本身。
该表修改了日期设置不正确我假设,我将其更改为使用CURRENT_TIMESTAMP
而不是以下命令
ALTER TABLE myTable MODIFY column modifiedDate timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP;
在此之后一切正常。以下是此行的描述:
| Field | Type | Null| Key | Default
| modifiedDate | timestamp | NO | | 0000-00-00 00:00:00
之后:
| Field | Type | Null| Key | Default
| modifiedDate | timestamp | NO | | CURRENT_TIMESTAMP