MySQL表字段時間設(shè)置默認(rèn)值
應(yīng)用場景
- 在數(shù)據(jù)表中,要記錄的每條數(shù)據(jù)是什么時候創(chuàng)建的,不需要應(yīng)用程序去特意記錄,而是由數(shù)據(jù)庫獲取當(dāng)前時間自動記錄創(chuàng)建時間。
- 在數(shù)據(jù)庫中,要記錄每條數(shù)據(jù)是什么時候修改的,不需要應(yīng)用程序去特意記錄,而由數(shù)據(jù)庫獲取當(dāng)前時間自動記錄修改時間。
在數(shù)據(jù)庫中獲取當(dāng)前時間
- oracle:select sysdate from dual;
- sqlserver:select getdate();
- mysql:select sysdate(); select now();
MySQL中時間函數(shù)NOW()和SYSDATE()的區(qū)別
NOW()取的是語句開始執(zhí)行的時間,SYSDATE()取的是動態(tài)的實時時間。
因為NOW()取自mysql的一個變量”TIMESTAMP”,而這個變量在語句開始執(zhí)行的時候就設(shè)定好了,因此在整個語句執(zhí)行過程中都不會變化。
執(zhí)行下面這個例子就明白了:
SELECT NOW(),SYSDATE(),SLEEP(3),NOW(),SYSDATE()
先查詢了NOW()和SYSDATE(),然后sleep了3秒,再查詢NOW()和SYSDATE(),結(jié)果如下:
實現(xiàn)方式
- 將字段類型設(shè)為 TIMESTAMP。
- 將默認(rèn)值設(shè)為 CURRENT_TIMESTAMP。
舉例應(yīng)用
創(chuàng)建一個表time,主鍵為id,其中一個字段為date,默認(rèn)系統(tǒng)當(dāng)前時間:
CREATE TABLE time( id INT PRIMARY KEY, date TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
插入一條數(shù)據(jù):
INSERT INTO time(id) VALUES(1);
查詢結(jié)果:
到此這篇關(guān)于MySQL表字段時間設(shè)置默認(rèn)值的文章就介紹到這了,更多相關(guān)MySQL 字段時間默認(rèn)值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySql 索引、鎖、事務(wù)知識點(diǎn)小結(jié)
這篇文章主要介紹了MySql 索引、鎖、事務(wù)知識點(diǎn),總結(jié)分析了mysql數(shù)據(jù)庫中關(guān)于索引、鎖和事務(wù)的概念、原理、知識點(diǎn)及相關(guān)注意事項,需要的朋友可以參考下2019-10-10SQL中from_unixtime函數(shù)的使用方法實例
在MySQL數(shù)據(jù)表設(shè)計中,時間字段一般都設(shè)計為時間戳格式的,開發(fā)人員去查看的時候就顯得有點(diǎn)不方便,可以使用FROM_UNIXTIME轉(zhuǎn)換成日期格式進(jìn)行查看,下面這篇文章主要給大家介紹了關(guān)于SQL中from_unixtime函數(shù)的使用方法的相關(guān)資料,需要的朋友可以參考下2022-08-08獲取MySQL數(shù)據(jù)表列信息的三種方法實現(xiàn)
本文介紹了獲取MySQL數(shù)據(jù)表列信息的三種方法實現(xiàn),包含SHOWCOLUMNS命令、DESCRIBE命令以及查詢INFORMATION_SCHEMA.COLUMNS表,具有一定的參考價值,感興趣的可以了解一下2024-12-12mysql利用init-connect增加訪問審計功能的實現(xiàn)
下面小編就為大家?guī)硪黄猰ysql利用init-connect增加訪問審計功能的實現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03