2011-03-03 694 views
5

我打算創建一個存儲日期時間數據類型Created_date的列的表。我的目標是將其默認值設置爲sysdate()。如何在MySql中將默認值設置爲sysdate?

我試圖

CREATE TABLE tbl_tablecreated_date日期時間DEFAULT SYSDATE())

這給了我錯誤說沒有一個有效的默認聲明。我在Oracle中使用了類似的邏輯。 請幫我解決這個問題。

在此先感謝。

+0

閱讀[this](http://dev.mysql.com/doc/refman/5.5/en/server-options.html#option_mysqld_sysdate-is-now) – diEcho 2011-03-03 09:47:09

回答

12

嘗試 CREATE TABLE tbl_table (created_date TIMESTAMP DEFAULT NOW())

但是:NOWsysdateTIMESTAMP不同的是datetime不同,記住這一點。

通常您只能使用常量作爲默認值。 TIMESTAMP是唯一支持類似NOW()的功能的列類型。有關MySQL Bugtracker的更多信息,請參閱here

+0

所以沒有辦法保持它的日期時間? – Antoops 2011-03-03 09:22:23

+0

看到我上面的編輯 – theomega 2011-03-03 09:25:40

+0

我從[鏈接](http://dev.mysql.com/doc/refman/5.0/en/timestamp.html)得到了一些信息,它說時間戳將被更新。但是,當這個更新?就像每當我們觸摸該行即使對於一個選擇查詢? – Antoops 2011-03-03 09:29:36

相關問題