MySQL如何为字段添加默认时间浅析

月亮的影子倒印在江面,宛如一个害羞的小姑娘,发出淡淡的光芒,桥上星星点点的路灯灯光,像一颗颗小星星,为人们照亮前方的道路,闭上眼睛,风夹带着蟋蟀的歌声,荡漾在路上。

日期类型区别及用途

MySQL 的日期类型有5个,分别是: date、time、year、datetime、timestamp。

类型 字节 格式 用途 是否支持设置系统默认值
date 3 YYYY-MM-DD 日期值 不支持
time 3 HH:MM:SS 时间值或持续时间 不支持
year 1 YYYY 年份 不支持
datetime 8 YYYY-MM-DD HH:MM:SS 日期和时间混合值 不支持
timestamp 4 YYYYMMDD HHMMSS 混合日期和时间,可作时间戳 支持

应用场景:

  • 在数据表中,要记录每条数据是什么时候创建的,不需要应用程序去特意记录,而由数据数据库获取当前时间自动记录创建时间;
  • 在数据库中,要记录每条数据是什么时候修改的,不需要应用程序去特意记录,而由数据数据库获取当前时间自动记录修改时间;

实现方式:

  • 将字段类型设为 TIMESTAMP
  • 将默认值设为 CURRENT_TIMESTAMP

举例应用:

MySQL 脚本实现用例

`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`datalevel` tinyint(1) DEFAULT '1' COMMENT '是否已删除(0删除/1正常)',

ALTER TABLE table_name
ADD COLUMN create_time datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间';
ALTER TABLE table_name
ADD COLUMN update_time datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间';
ALTER TABLE table_name
ADD COLUMN datalevel tinyint(1) DEFAULT '1' COMMENT '是否已删除(0删除/1正常)';

MySQL创建普通索引

ALTER TABLE projectfile ADD INDEX (fileuploadercode, projectid);

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。

您可能有感兴趣的文章
centos7 mysql5.7主从同步配置

centos7安装MySQL教程

达梦数据库DM8表空间管理之删除表空间

达梦数据库DM8表空间管理之创建表空间

国产达梦数据库常用SQL语句(上)