mysql創(chuàng)建時(shí)間字段添加默認(rèn)值方式
mysql創(chuàng)建時(shí)間字段添加默認(rèn)值
在創(chuàng)建時(shí)間字段的時(shí)候
例如:
create_time
默認(rèn)值可以設(shè)置為CURRENT_TIMESTAMP 插入數(shù)據(jù)時(shí)候會(huì)自動(dòng)添加時(shí)間,默認(rèn)值為當(dāng)前時(shí)間update_time
默認(rèn)值可以設(shè)置為CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 表示每次更新這條數(shù)據(jù)的時(shí)候,該字段都會(huì)更新成當(dāng)前時(shí)間
設(shè)置默認(rèn)值錯(cuò)誤,可以用下面sql修改字段默認(rèn)值
ALTER TABLE `sms_message_system` MODIFY COLUMN `update_time` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間' ;
這兩個(gè)操作是mysql數(shù)據(jù)庫(kù)本身在維護(hù),所以可以根據(jù)這個(gè)特性來(lái)生成【創(chuàng)建時(shí)間】和【更新時(shí)間】?jī)蓚€(gè)字段,且不需要代碼來(lái)維護(hù).
CREATE TABLE `sms_message_system` ( ? `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '編號(hào)', ? `message_title` varchar(255) DEFAULT '' COMMENT '標(biāo)題', ? `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間', ? `release_staff` varchar(255) DEFAULT NULL COMMENT '發(fā)布人員', ? `details` varchar(255) DEFAULT NULL COMMENT '消息詳情', ? `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間', ? PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
mysql對(duì)表的創(chuàng)建,creat_time字段設(shè)置默認(rèn)值,update_time字段更新操作設(shè)置為當(dāng)前時(shí)間
目前在設(shè)計(jì)表的時(shí)候,一般會(huì)對(duì)表添加兩個(gè)公共字段,create_time,upate_time。
create_time
在新增數(shù)據(jù)的時(shí)候需要有當(dāng)前時(shí)間upate_time
在新增數(shù)據(jù)的時(shí)候使用當(dāng)前時(shí)間,在這行數(shù)據(jù)被跟新的時(shí)候設(shè)置成更新的當(dāng)前時(shí)間。
上面的處理邏輯,可以在程序中寫代碼處理,也可以在數(shù)據(jù)庫(kù)層處理。
create_time,update_time數(shù)據(jù)庫(kù)建表語(yǔ)句的設(shè)置
以下是數(shù)據(jù)庫(kù)層處理的方案
CREATE TABLE `xxx` ( ? `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增主鍵', ? `table_id` int(11) DEFAULT NULL COMMENT '表id', ? `column_name` varchar(64) DEFAULT NULL COMMENT '列名字', ? `data_type` varchar(32) DEFAULT NULL COMMENT '列類型', ? `data_length` int(11) DEFAULT NULL COMMENT '列長(zhǎng)度', ? `column_comment` varchar(255) DEFAULT NULL COMMENT '列備注', ? `column_order` int(11) DEFAULT NULL COMMENT '列排序', ? `custom_comment` varchar(255) DEFAULT NULL COMMENT '自定義備注', ? `del_flag` int(11) DEFAULT NULL COMMENT '是否刪除:0未刪除,1刪除', ? `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間', ? `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時(shí)間', ? PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8
對(duì)create_time字段和update_time字段的語(yǔ)法邏輯解說(shuō)
主要看create_time字段和update_time字段。
DEFAULT CURRENT_TIMESTAMP
表示insert的時(shí)候設(shè)置默認(rèn)值ON UPDATE CURRENT_TIMESTAMP
表示一條數(shù)據(jù)更新的時(shí)候,本條數(shù)據(jù)的該字段設(shè)置為當(dāng)前時(shí)間
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
mysql查找刪除表中重復(fù)數(shù)據(jù)方法總結(jié)
在本篇文章中小編給大家整理了關(guān)于mysql查找刪除表中重復(fù)數(shù)據(jù)方法和相關(guān)知識(shí)點(diǎn),需要的朋友們參考下。2019-05-05mysql分頁(yè)時(shí)offset過(guò)大的Sql優(yōu)化經(jīng)驗(yàn)分享
mysql分頁(yè)是我們?cè)陂_發(fā)經(jīng)常遇到的一個(gè)功能,最近在實(shí)現(xiàn)該功能的時(shí)候遇到一個(gè)問(wèn)題,所以這篇文章主要給大家介紹了關(guān)于mysql分頁(yè)時(shí)offset過(guò)大的Sql優(yōu)化經(jīng)驗(yàn),文中介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來(lái)一起看看吧。2017-08-08MySQL切分函數(shù)substring()的具體使用
這篇文章主要介紹了MySQL切分函數(shù)substring()的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Navicat Premium操作MySQL數(shù)據(jù)庫(kù)(執(zhí)行sql語(yǔ)句)
這篇文章主要介紹了Navicat Premium操作MySQL數(shù)據(jù)庫(kù)(執(zhí)行sql語(yǔ)句),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11Mysql?SQL審核平臺(tái)Yearning本地部署方案
Yearning簡(jiǎn)單高效的MYSQL 審計(jì)平臺(tái)一款MYSQL SQL語(yǔ)句/查詢審計(jì)工具,為DBA與開發(fā)人員使用.本地部署,注重隱私,簡(jiǎn)單高效的MYSQL審計(jì)平臺(tái),下面介紹Linux 簡(jiǎn)單部署Yearning 并結(jié)合cpolar 內(nèi)網(wǎng)穿透工具實(shí)現(xiàn)遠(yuǎn)程訪問(wèn),破除訪問(wèn)限制,提高工作效率,感興趣的朋友一起看看吧2024-01-01解決MySQL8.0報(bào)錯(cuò)Client does not support auth
本文主要介紹了解決MySQL8.0報(bào)錯(cuò)Client does not support authentication protocol requested by server...問(wèn)題,文中通過(guò)代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05