在數(shù)據(jù)庫使用中經(jīng)常使用到時間字段。常用的有創(chuàng)建時間和更新時間。
然而在使用中想要創(chuàng)建時間在創(chuàng)建的時候自動設(shè)置為當前時間,更新時間在更新時自動更新為當前時間。
創(chuàng)建表 stu
CREATE TABLE `stu` (
'id' int NOT NULL AUTO_INCREMENT,
'createTime' timestamp DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時間',
'moditiyTime' timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時間',
PRIMARY KEY ('id'));
創(chuàng)建的時候設(shè)置當前時間
DEFAULT CURRENT_TIMESTAMP
更新的時候設(shè)置更新時間為當前時間
DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
補充:MySQL為字段添加默認時間(插入時間)
應用場景:
1、在數(shù)據(jù)表中,要記錄每條數(shù)據(jù)是什么時候創(chuàng)建的,不需要應用程序去特意記錄,而由數(shù)據(jù)數(shù)據(jù)庫獲取當前時間自動記錄創(chuàng)建時間;
2、在數(shù)據(jù)庫中,要記錄每條數(shù)據(jù)是什么時候修改的,不需要應用程序去特意記錄,而由數(shù)據(jù)數(shù)據(jù)庫獲取當前時間自動記錄修改時間;
實現(xiàn)方式:
1、將字段類型設(shè)為 TIMESTAMP
2、將默認值設(shè)為 CURRENT_TIMESTAMP
舉例應用:
1、MySQL 腳本實現(xiàn)用例
–添加CreateTime 設(shè)置默認時間 CURRENT_TIMESTAMP
ALTER TABLE table_name
ADD COLUMN CreateTime datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT ‘創(chuàng)建時間' ;
–修改CreateTime 設(shè)置默認時間 CURRENT_TIMESTAMP
ALTER TABLE table_name
MODIFY COLUMN CreateTime datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT ‘創(chuàng)建時間' ;
–添加UpdateTime 設(shè)置 默認時間 CURRENT_TIMESTAMP 設(shè)置更新時間為 ON UPDATE CURRENT_TIMESTAMP
ALTER TABLE table_name
ADD COLUMN UpdateTime timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT ‘創(chuàng)建時間' ;
–修改 UpdateTime 設(shè)置 默認時間 CURRENT_TIMESTAMP 設(shè)置更新時間為 ON UPDATE CURRENT_TIMESTAMP
ALTER TABLE table_name
MODIFY COLUMN UpdateTime timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT ‘創(chuàng)建時間' ;
2、MySQL工具設(shè)置
MySQL自動管理,保持和數(shù)據(jù)庫時間一致性。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- MySQL DATE_ADD和ADDDATE函數(shù)實現(xiàn)向日期添加指定時間間隔
- MySQL DATEDIFF函數(shù)獲取兩個日期的時間間隔的方法
- 一篇文章搞定Mysql日期時間函數(shù)
- MySQL日期函數(shù)與時間函數(shù)匯總(MySQL 5.X)
- MySQL獲得當前日期時間函數(shù)示例詳解
- MySQL日期與時間函數(shù)的使用匯總