mysql設(shè)置update時(shí)間字段自動(dòng)更新的實(shí)現(xiàn)
之前在給網(wǎng)站做表設(shè)計(jì)的時(shí)候時(shí)間字段都是用的datetime類型,初始值都是設(shè)置的CURRENT_TIMESTAMP。
由于給文章表設(shè)計(jì)的有創(chuàng)建時(shí)間和更新時(shí)間兩個(gè)字段,但是更新時(shí)間字段需要在更新文章后再次更新,當(dāng)時(shí)由于不了解mysql還可以設(shè)置自動(dòng)更新時(shí)間戳的功能,而是在更新文章的接口中手動(dòng)更新時(shí)間字段,即以下這種方式:
update pages set update_date=now()
由于最近考慮給一些編輯功能增加更新時(shí)間字段,了解到Mysql 本身已經(jīng)支持這個(gè)功能了,所以嘗試采用新的方式來(lái)實(shí)現(xiàn)update_date自動(dòng)更新。
可以通過(guò)sql語(yǔ)句跟頁(yè)面配置來(lái)實(shí)現(xiàn),當(dāng)然頁(yè)面配置本質(zhì)上也是通過(guò)sql實(shí)現(xiàn)的。
sql語(yǔ)句核心的語(yǔ)句為
ON UPDATE CURRENT_TIMESTAMP
所有可以將通過(guò)執(zhí)行以下語(yǔ)句來(lái)實(shí)現(xiàn)時(shí)間字段自動(dòng)更新功能:
# 若該字段不存在 ALTER TABLE `dsiab_com` ADD `update_date` DATETIME on update CURRENT_TIMESTAMP NOT NULL; # 若該字段已存在 ALTER TABLE `dsiab_com` CHANGE `update_date` `update_date` DATETIME on update CURRENT_TIMESTAMP NULL DEFAULT NULL;
上面的語(yǔ)句主要都是在update_date字段上新增on update CURRENT_TIMESTAMP 屬性從而達(dá)到自動(dòng)更新功能。
如果你是用的phpmyadmin來(lái)管理數(shù)據(jù)的話那么可以通過(guò)以下方式實(shí)現(xiàn)自動(dòng)時(shí)間更新功能,當(dāng)然這種方式本質(zhì)上還是通過(guò)上面的方式,只是這種不需要需執(zhí)行代碼,只需要通過(guò)鼠標(biāo)就可以完成。

通過(guò)這一點(diǎn)了解到數(shù)據(jù)庫(kù)還是有需要需要繼續(xù)學(xué)習(xí)的地方,一個(gè)好的開(kāi)發(fā)人員必然需要對(duì)數(shù)據(jù)庫(kù)熟練掌握,你能看到的內(nèi)容最終都來(lái)源于數(shù)據(jù)庫(kù),從數(shù)據(jù)庫(kù)怎么拿是開(kāi)發(fā)人員關(guān)心的問(wèn)題,更重要的是怎么設(shè)計(jì)一張合理存儲(chǔ)數(shù)據(jù)的表,讓數(shù)據(jù)的獲取更簡(jiǎn)單高效,這才是一個(gè)開(kāi)發(fā)人員追求的目標(biāo)。
到此這篇關(guān)于mysql設(shè)置update時(shí)間字段自動(dòng)更新的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)mysql update時(shí)間自動(dòng)更新內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- java實(shí)現(xiàn)mysql自動(dòng)更新創(chuàng)建時(shí)間與更新時(shí)間的兩種方式
- MySQL修改時(shí)間添加時(shí)間自動(dòng)更新的兩種方法
- mysql設(shè)置值timestamp獲取當(dāng)前時(shí)間并自動(dòng)更新方式
- MySQL中create_time和update_time實(shí)現(xiàn)自動(dòng)更新時(shí)間
- MySQL8設(shè)置自動(dòng)創(chuàng)建時(shí)間和自動(dòng)更新時(shí)間的實(shí)現(xiàn)方法
- MySQL中創(chuàng)建時(shí)間和更新時(shí)間的自動(dòng)更新的實(shí)現(xiàn)示例
- mysql 實(shí)現(xiàn)添加時(shí)間自動(dòng)添加更新時(shí)間自動(dòng)更新操作
- MySQL timestamp自動(dòng)更新時(shí)間分享
相關(guān)文章
MySQL實(shí)現(xiàn)崩潰恢復(fù)的幾種方法
MySQL 使用一系列日志和恢復(fù)機(jī)制來(lái)實(shí)現(xiàn)崩潰恢復(fù),確保數(shù)據(jù)庫(kù)在發(fā)生崩潰后可以恢復(fù)到一致的狀態(tài),主要依賴的日志包括 Redo Log、Undo Log 和 Binary Log,下面就來(lái)詳細(xì)的介紹一下2025-08-08
vs如何讀取mysql中的數(shù)據(jù)并解決中文亂碼問(wèn)題
這篇文章主要介紹了vs如何讀取mysql中的數(shù)據(jù)并解決中文亂碼問(wèn)題,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09
MySQL 8.0找不到 my.ini 配置文件(并開(kāi)啟 Binlog 
本文主要介紹了MySQL 8.0找不到 my.ini 配置文件(并開(kāi)啟 Binlog 監(jiān)聽(tīng)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-06-06
Mysql樹(shù)形表的2種查詢解決方案(遞歸與自連接)
MySQL作為一個(gè)關(guān)系型數(shù)據(jù)庫(kù),存儲(chǔ)著許多的數(shù)據(jù)信息,在實(shí)際應(yīng)用中經(jīng)常會(huì)遇到需要存儲(chǔ)樹(shù)形結(jié)構(gòu)數(shù)據(jù)的情境,例如部門結(jié)構(gòu)、商品分類等,這篇文章主要給大家介紹了關(guān)于Mysql樹(shù)形表的2種查詢解決方案,分別是遞歸與自連接,需要的朋友可以參考下2023-11-11
通過(guò)mysql show processlist 命令檢查mysql鎖的方法
show processlist 命令非常實(shí)用,有時(shí)候mysql經(jīng)常跑到50%以上或更多,就需要用這個(gè)命令看哪個(gè)sql語(yǔ)句占用資源比較多,就知道哪個(gè)網(wǎng)站的程序問(wèn)題了。2010-03-03
關(guān)于MySQL Memory存儲(chǔ)引擎的相關(guān)知識(shí)
這篇文章主要介紹了關(guān)于MySQL Memory存儲(chǔ)引擎的相關(guān)知識(shí),幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下2020-11-11
mysql啟動(dòng)報(bào)錯(cuò)Failed?to?start?LSB:start?and?stop?MySQL的問(wèn)題解決
本文主要介紹了mysql啟動(dòng)報(bào)錯(cuò)Failed?to?start?LSB:start?and?stop?MySQL的問(wèn)題解決,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10

