欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MYSQL ON UPDATE CURRENT_TIMESTAMP當(dāng)字段值發(fā)生改變時(shí)才會(huì)更新記錄的時(shí)間

 更新時(shí)間:2023年01月05日 09:09:23   作者:你這個(gè)無聊的小demo  
本文主要介紹了MYSQL ON UPDATE CURRENT_TIMESTAMP當(dāng)字段值發(fā)生改變時(shí)才會(huì)更新記錄的時(shí)間,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

疑惑

今天看到一個(gè)博客說:時(shí)間戳有ON UPDATE CURRENT_TIMESTAMP屬性,無論值有沒有改變時(shí)間都會(huì)更新 (下面是別人博客的截圖)

在這里插入圖片描述

表示疑惑,于是動(dòng)手建表寫字段驗(yàn)證了一波。

驗(yàn)證

1. 建表:

設(shè)置upd_time的類型為timestamp時(shí)間戳類型,并設(shè)置默認(rèn)值為DEFAULT CURRENT_TIMESTAMP,且設(shè)置ON UPDATE CURRENT_TIMESTAMP,記錄發(fā)生變化時(shí)也要更新該時(shí)間戳。

CREATE TABLE `t_temp` (
  `id` int(11) NOT NULL DEFAULT '0',
  `username` varchar(255) DEFAULT NULL,
  `upd_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '默認(rèn)取當(dāng)前時(shí)間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


不想寫建表的sql的話,也可以用Navicat幫你建表,如圖,注意細(xì)節(jié):

在這里插入圖片描述

2. 表建好了,隨便加條記錄,如圖:

PS:留意一下這條記錄的id 和 upd_time字段的值,待會(huì)我要更新這條記錄,注意看它們的變化

在這里插入圖片描述

3. 更新這條id=1的記錄,設(shè)置username=‘mm’。

即,我雖然對這條記錄update了一波,但是并沒有改變?nèi)魏卫锩嫒魏我粋€(gè)字段的值

在這里插入圖片描述

4. 最后,我們刷新一下數(shù)據(jù)表,看看時(shí)間戳有沒有發(fā)生變化:

可以看到時(shí)間戳并未改變

在這里插入圖片描述

結(jié)論

設(shè)置字段屬性為時(shí)間戳類型,且把默認(rèn)值設(shè)置成CURRENT_TIMESTAMP的情況下。如果你設(shè)置了時(shí)間隨當(dāng)前時(shí)間戳更新( ON UPDATE CURRENT_TIMESTAMP),那么當(dāng)你更新字段時(shí),只有字段值發(fā)生變化了,你的時(shí)間字段才會(huì)變?yōu)閁PDATE操作時(shí)的時(shí)間

補(bǔ)充說明

如果只對字段設(shè)置默認(rèn)值取CURRENT_TIMESTAMP,而沒有設(shè)置隨當(dāng)前時(shí)間戳更新的話(就是建表時(shí)不勾選下圖中的玩意兒),只有記錄創(chuàng)建時(shí)會(huì)有時(shí)間戳,此后對記錄的更新操作都不會(huì)再改變該記錄的時(shí)間字段了

在這里插入圖片描述

 到此這篇關(guān)于MYSQL ON UPDATE CURRENT_TIMESTAMP當(dāng)字段值發(fā)生改變時(shí)才會(huì)更新記錄的時(shí)間的文章就介紹到這了,更多相關(guān)MYSQL ON UPDATE CURRENT_TIMESTAMP內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論