2010-04-05 60 views
4

我試圖將我的列默認日期時間設置爲系統日期時間。 它顯示了我一個錯誤如何將默認日期時間設置爲mysql中的系統日期時間

無效的默認值 「InsertionDate」

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

即使你可以使用一個函數作爲默認值(你不能)你沒有提供一個函數:''Now()'是一個字符串。 – 2010-04-05 10:27:29

回答

2

在MySQL中的列不能是結果的默認值的功能。

有一個例外是current_timestamp作爲旁觀者指出。

你的說法應該是

alter table `vts`.`tblpickpoint` 
    add column `InsertionDate` TIMESTAMP 
      DEFAULT CURRENT_TIMESTAMP 
2

看一看CURRENT_TIMESTAMP

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` 
相關問題