5

我正在尝试将我的列默认日期时间设置为系统日期时间。它向我显示了一个错误

“InsertionDate”的默认值无效

alter table `vts`.`tblpickpoint` 
  add column `InsertionDate` 
      datetime DEFAULT 'Now()' NULL after `PickPointLatLong`
4

3 回答 3

3

mysql中列的默认值不能是函数的结果。

asstander 指出的一个例外是 current_timestamp。

你的陈述应该是

alter table `vts`.`tblpickpoint` 
  add column `InsertionDate` TIMESTAMP 
             DEFAULT CURRENT_TIMESTAMP 
于 2010-04-05T09:57:28.903 回答
2

看看 CURRENT_TIMESTAMP

于 2010-04-05T09:55:50.747 回答
0

如果要在每次更改时初始化并更新值,请使用:

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`
于 2010-04-05T10:05:19.253 回答