我试图将列的默认日期时间设置为系统日期时间。但是它显示了一个错误:
'InsertionDate' 的默认值无效。
alter table `vts`.`tblpickpoint`
add column `InsertionDate`
datetime DEFAULT 'Now()' NULL after `PickPointLatLong`
我试图将列的默认日期时间设置为系统日期时间。但是它显示了一个错误:
'InsertionDate' 的默认值无效。
alter table `vts`.`tblpickpoint`
add column `InsertionDate`
datetime DEFAULT 'Now()' NULL after `PickPointLatLong`
在mysql中,列的默认值不能是函数的结果。
唯一的例外是当前时间戳(as astander指出)。
你的语句应该是:
alter table `vts`.`tblpickpoint`
add column `InsertionDate` TIMESTAMP
DEFAULT CURRENT_TIMESTAMP
请看CURRENT_TIMESTAMP
如果你希望在每次更改时初始化并更新数值,请使用以下代码:
alter table `vts`.`tblpickpoint`
add column `InsertionDate`
TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
after `PickPointLatLong`
alter table `vts`.`tblpickpoint`
add column `InsertionDate`
TIMESTAMP DEFAULT CURRENT_TIMESTAMP
after `PickPointLatLong`