作为程序员一定要保持良好的睡眠,才能好编程

Mysql 如何设置字段自动获取当前时间

发布时间:2018-04-26

在使用插入数据的时候,有时会需要插入时间默认值,


需要数据库自动更新时间的话,有两个条件必须满足,才可以,


1、将字段类型设为  TIMESTAMP 

2、将默认值设为  CURRENT_TIMESTAMP



如果是这种方式插入的话,创建时间可以不用插入  有自动默认的时间了。

DROP TABLE IF EXISTS `goods_category`;
CREATE TABLE goods_category(
    id int unsigned primary key not null auto_increment comment '//id',
    title varchar(30) not null comment '//栏目名称',
    pid int not null comment '//上一级栏目 支持多级目录支持',
    createtime timestamp not null default current_timestamp comment '//创建时间 时间戳的方式',
    key `goods_type`(pid,id)
)ENGINE innodb default charset utf8;

 createtime timestamp not null default current_timestamp comment '//创建时间 时间戳的方式',


on update current_timestamp 有了这句话以后,mysql就自动管理时间了。



--添加CreateTime 设置默认时间 CURRENT_TIMESTAMP 

ALTER TABLE `table_name`
ADD COLUMN  `CreateTime`  datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;

 

--修改CreateTime 设置默认时间 CURRENT_TIMESTAMP 
ALTER TABLE `table_name`
MODIFY COLUMN  `CreateTime` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;

 

--添加UpdateTime 设置 默认时间 CURRENT_TIMESTAMP   设置更新时间为 ON UPDATE CURRENT_TIMESTAMP 
ALTER TABLE `table_name`
ADD COLUMN `UpdateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间' ;

 

--修改 UpdateTime 设置 默认时间 CURRENT_TIMESTAMP   设置更新时间为 ON UPDATE CURRENT_TIMESTAMP 

ALTER TABLE `table_name`
MODIFY COLUMN `UpdateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间' ;