日期类型区别及用途
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 脚本实现用例
1
2
3
4
5
6
7
8
9
10
|
`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创建普通索引
1
|
ALTER TABLE projectfile ADD INDEX (fileuploadercode, projectid); |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。
原文链接:https://aquan.run/archives/MySQL为字段添加默认时间