MySQL中創(chuàng)建時間和更新時間的自動更新的實現(xiàn)示例

一、需求
當新增記錄的時候,MySQL自動將系統(tǒng)的當前時間 set 到創(chuàng)建時間和更新時間這兩個字段中。
當更新記錄的時候,MySQL 只 update 更新時間字段的時間,而不修改創(chuàng)建時間字段對應的值。
二、方案
找到表中對應的創(chuàng)建時間和更新時間的字段,將其修改如下:
- 創(chuàng)建時間字段
creat_time timestamp NULL DEFAULT CURRENT_TIMESTAMP - 更新時間字段
update_time timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
如此便不需要在代碼中對記錄設置創(chuàng)建時間和修改時間了。在 navicat 中的操作:找到相應的表—右擊—>點擊“設計表”—>如下圖:
插入記錄時自動生成創(chuàng)建時間:

更新記錄時自動生成修改時間:

創(chuàng)建時間(創(chuàng)建日期)、修改時間(修改日期)設置為自動生成
創(chuàng)建日期的自動生成
創(chuàng)建日期的自動生成比較好說:
字段默認值設置為 CURRENT_TIMESTAMP ,這樣在新增的時候,日期會自動生成。
sql語句為:
CREATE TABLE T_USER( CREATE_DATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP , UPDATE_DATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP )
當然,數(shù)據(jù)庫設計工具也可以直接設置。
更新日期的自動生成
更新日期稍微麻煩一點,因為默認值是新增的時候才有效,update的時候不會觸發(fā)default的邏輯。
這里用觸發(fā)器:
create or replace trigger T_USER_UPDATE_TRIGGER
before update on T_USER for each row
begin
:new.UPDATE_DATE := sysdate;
end;
到此這篇關于MySQL中創(chuàng)建時間和更新時間的自動更新的文章就介紹到這了,更多相關MySQL自動更新創(chuàng)建時間和更新時間內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持本站!
版權聲明:本站文章來源標注為YINGSOO的內(nèi)容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。
關注官方微信