如何設置帶有DateTime列的MySql模式,使其值始終爲最後一次插入/更新此行的時間?使用Now()作爲默認的MySql日期時間類型
0
A
回答
1
您可以用觸發器做:
DELIMITER $$
CREATE TRIGGER `before_update` BEFORE UPDATE ON `table_name` FOR EACH ROW BEGIN
SET NEW.update_date = NOW();
END;
$$
CREATE TRIGGER `before_insert` BEFORE INSERT ON `table_name` FOR EACH ROW BEGIN
SET NEW.update_date = NOW();
END;
$$
DELIMITER ;
8
你可以時間戳來代替,並設置ON UPDATE CURRENT_TIMESTAMP NOT NULL,例如:
CREATE TABLE example (
lastUpdate TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL
);
2
像ANAX表示,採用TIMESTAMP
代替DATETIME
會給你一個使用當前時間的列,而不是等待提供的日期/時間。
你有很多的options with TIMESTAMP
,這兩個是最重要的有:
- 有使用它時,該行創建當前時間(
NOW()
) - 有修改它的列中當前行的修改時間。
如果不設置任何選項,就像這樣:
CREATE TABLE stuff (ts TIMESTAMP);
它將把在當前時間創建和變化上修改該列。
所以,如果你想有一個列在創建時,只顯示,你可以使用:
CREATE TABLE stuff (ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
既然你沒有指定ON UPDATE
條款,如果該行被更新,它不會做任何事情。
如果你是瘋了,像我一樣,你會希望同時,與去:
CREATE TABLE stuff (create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
mod_date TIMESTAMP
);
,因爲我還沒有寫這一點,然而,這最後一個是相當於寫出:
CREATE TABLE stuff (create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
mod_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP
);
+0
第二個最後的聲明真的幫助我。非常感謝你。 – twnaing 2013-01-18 19:16:10
4
Anax已經接近,但錯過了默認值。
CREATE TABLE example (
lastUpdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL
)
相關問題
- 1. MySQL的查詢日期時間默認
- 2. 類型日期默認SYSDATE在MySQL
- 3. MySQL的日期VS日期時間默認值
- 4. 在MySQL/PHP中使用now()插入當前日期/時間
- 5. MVC Razor - 作爲文本框類型日期的當前日期的默認值
- 6. 如何使用xslt將默認的mysql modtimes轉換爲UTC日期時間
- 7. 只爲新行添加默認爲NOW()的時間戳列
- 8. MySQL - 刪除日期時間字段的默認值
- 9. WPF默認日期時間格式
- 10. 如何將默認日期時間設置爲mysql中的系統日期時間
- 11. java中的日期時間和休眠時的默認日期時間映射
- 12. NOW()不更新日期時間?
- 13. 如何使用索引mysql日期時間類型?
- 14. MySQL日期時間操作
- 15. 日期時間類型SQL
- 16. 轉換日期時間格式MySQL默認格式
- 17. 設置今天的日期作爲模型中的默認值
- 18. 將訪問日期時間類型到MySQL類型
- 19. MySQL選擇行日期和時間> NOW
- 20. 爲什麼keen.io對象時間軸默認日期爲一天?
- 21. 在mysql數據庫中使用默認值分隔存儲時間和日期
- 22. jQuery的日期選擇器UI首次啓用日期作爲默認日期
- 23. 如何將java日期類型存儲爲mysql日期類型?
- 24. 在mysql中將數據類型從日期更改爲日期/時間?
- 25. 使用當前日期作爲列的默認值
- 26. 使用jquery.datetimepicker設置默認日期和時間
- 27. 默認在Django模型中輸入當地時間的當前日期時間
- 28. 查詢'Now'的日期時間列減去一定的時間?
- 29. 設置日期默認離子日期時間離子v-2
- 30. kendo日期時間選擇器中的默認時間
差不多,看我的其他答案。 – ripper234 2009-09-30 15:35:41
我已經做了,並投票給你。我也試着留下'Well spotted'的評論,但是它沒有超過所需的最少15個字符。 – Anax 2009-09-30 15:58:20
我討厭15個字符的規則。 – ripper234 2009-09-30 15:59:48