亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mysql設(shè)置值timestamp獲取當(dāng)前時間并自動更新方式

 更新時間:2023年07月24日 09:58:21   作者:ITzhongzi  
這篇文章主要介紹了mysql設(shè)置值timestamp獲取當(dāng)前時間并自動更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

需求描述:現(xiàn)需要數(shù)據(jù)庫中一個字段來記錄當(dāng)前記錄的最近修改時間或者創(chuàng)建時間,并自動更新維護。

timestamp類型的使用

示例如下:

創(chuàng)建一個數(shù)據(jù)庫,并指定 uptime為 timestamp類型

create  table test(
	tid int primary key auto_increment,
	uptime timestamp,
	hobby varchar(20)
);

插入一條數(shù)據(jù)

insert into test (tid,uptime,hobby) values(null,null,null);

查看數(shù)據(jù)庫數(shù)據(jù)

在這里插入圖片描述

我們看到數(shù)據(jù)插入成功,但是uptime字段顯示為 null。

我們再插入一條數(shù)據(jù),如下:

insert into test (tid,uptime,hobby) values(null,current_timestamp,null);

查看數(shù)據(jù)庫數(shù)據(jù)如下:

在這里插入圖片描述

我們看到第二條數(shù)據(jù)插入成功了,并且時間為 當(dāng)前插入的時間

下面我們更新一下字段看 時間是否會自動維護

update test set hobby='籃球'  where tid < 4;

我們看效果

在這里插入圖片描述

時間并沒有自動更新,還是我們插入的時間,并不是修改的時間。

我們首先手動更新一下時間:

update test set uptime = current_timestamp where tid < 10;

效果如圖:

在這里插入圖片描述

當(dāng)我們設(shè)置timestamp類型為current_timestamp時,系統(tǒng)會自動獲取當(dāng)前修改或者創(chuàng)建時間,但是不糊自動維護。

那么問題來了?

如何讓timestamp類型自動維護

1.我們重新傳建一個是數(shù)據(jù)庫

create table test2(
	pid int primary key  auto_increment,
	uptime timestamp null default current_timestamp on update current_timestamp,
	hobby varchar(30)
);

2.我們先看一下創(chuàng)建后的表結(jié)構(gòu):

show create table test2;

在這里插入圖片描述

我們注意一下 uptime 字段,可以為空,默認(rèn)時間為current_timestamp, on update curret_timestamp設(shè)置可以使記錄發(fā)生改變的時候時間自動改變。

插入一條沒有默認(rèn)時間的數(shù)據(jù)數(shù)據(jù)

insert into test2 values(null,null,null);

查看表結(jié)構(gòu)

在這里插入圖片描述

我們可以看到當(dāng)我們沒有設(shè)置默認(rèn)值的時候時間默認(rèn)為null

我們再插入一條帶默認(rèn)時間的數(shù)據(jù)

insert into test2 values(null,current_timestamp,null);

如圖:

在這里插入圖片描述

我們可以看到 有兩條數(shù)據(jù),一條有默認(rèn)時間一條沒有。

下面我們修改一下 兩條記錄,看時間是否會自動維護

update test2 set hobby='籃球' where pid < 5;

大功告成~

在這里插入圖片描述

我們可以看到時間字段 在 自動維護,之前默認(rèn)值為空的時候,在修改記錄之后也會自動將時間改為 修改時間。

最后的完善

我們已經(jīng)可以做到 時間自動維護了,還有一個 小缺點,

就是在剛開始插入時間時,我們沒有傳入默認(rèn)時間的話,初始值為null,只有我們修改這條記錄的時候他才會自動記錄時間。

完善方案:

在創(chuàng)建數(shù)據(jù)庫的時候設(shè)置 uptime字段為 not null

create table test3(pid int primary key auto_increment,uptime timestamp not null default current_timestamp on update current_timestamp);

表結(jié)構(gòu)如下:

在這里插入圖片描述

這樣我們就會在創(chuàng)建該記錄時候強制傳入一個時間,并在修改的時候自動維護。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Navicat如何通過ssh連接mysql

    Navicat如何通過ssh連接mysql

    文章介紹了通過SSH連接MySQL數(shù)據(jù)庫的方法,強調(diào)了確保MySQL默認(rèn)端口3306沒有被防火墻阻攔,以及在Ubuntu系統(tǒng)中默認(rèn)root的SSH是禁止的,應(yīng)使用其他賬戶登錄
    2025-02-02
  • MySQL8.0.20壓縮版本安裝教程圖文詳解

    MySQL8.0.20壓縮版本安裝教程圖文詳解

    這篇文章主要介紹了MySQL8.0.20壓縮版本安裝教程,需本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,要的朋友可以參考下
    2020-08-08
  • mysql5.5中文亂碼問題解決的有用方法

    mysql5.5中文亂碼問題解決的有用方法

    在使用MYSQL時遇到中文亂碼的問題,表現(xiàn)為插入數(shù)據(jù)后查詢時輸出為??(亂碼),下面這篇文章主要給大家介紹了關(guān)于mysql5.5中文亂碼問題解決的有用方法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • mysql函數(shù)group_concat()返回結(jié)果不全問題

    mysql函數(shù)group_concat()返回結(jié)果不全問題

    文章介紹了MySQL中使用group_concat()函數(shù)拼接返回字段時遇到的字符長度問題,分析了問題原因,并提供了兩種解決方法:臨時修改group_concat_max_len配置和永久修改MySQL配置文件
    2024-11-11
  • mysql?sum(if())和count(if())的用法說明

    mysql?sum(if())和count(if())的用法說明

    這篇文章主要介紹了mysql?sum(if())和count(if())的用法說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • mysql字符集和數(shù)據(jù)庫引擎修改方法分享

    mysql字符集和數(shù)據(jù)庫引擎修改方法分享

    使用虛擬主機空間上的phpmyadmin操作數(shù)據(jù)庫的時候,如果看到phpmyadmin首頁上顯示的MySQL 字符集為cp1252 West European (latin1),當(dāng)我們導(dǎo)入數(shù)據(jù)時就會出現(xiàn)亂碼
    2012-02-02
  • MySQL學(xué)習(xí)之三大范式詳解小白篇

    MySQL學(xué)習(xí)之三大范式詳解小白篇

    本篇文章為大家介紹了MYSQL數(shù)據(jù)庫學(xué)習(xí)中三大范式的規(guī)則詳解,有需要的朋友可以借鑒參考下,希望可以對大家的數(shù)據(jù)庫學(xué)習(xí)有所幫助
    2021-09-09
  • MYSQL多表聯(lián)查on和where的區(qū)別小結(jié)

    MYSQL多表聯(lián)查on和where的區(qū)別小結(jié)

    在使用left join時過濾條件放到on后面還是where后面是有區(qū)別的,如果沒有搞清楚他們的區(qū)別,連表匯總的結(jié)果就會變少或者變多,本文就來詳細(xì)介紹一下兩者的區(qū)別,感興趣的可以了解一下
    2023-11-11
  • 深入分析Mysql中l(wèi)imit的用法

    深入分析Mysql中l(wèi)imit的用法

    很久沒用mysql的limit,一時大意竟然用錯了,自認(rèn)為(limit 開始,結(jié)束),其實錯了,正確的應(yīng)該是(limit 偏移量,條數(shù)),為了記住這次錯誤,轉(zhuǎn)載一篇limit用法詳解。推薦給大家,希望對大家能夠有所幫助。
    2015-03-03
  • 安裝Mysql時出現(xiàn)錯誤及解決辦法

    安裝Mysql時出現(xiàn)錯誤及解決辦法

    因為一時手癢癢更新了一下驅(qū)動,結(jié)果導(dǎo)致無線網(wǎng)卡出了問題,本文給大家分享安裝mysql時出現(xiàn)錯誤及解決辦法,對安裝mysql時出現(xiàn)錯誤相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12

最新評論