1. 首先进入MySQL客户端,并登录到要操作的数据库
2. 使用CREATE TABLE命令创建表,并定义需要插入当前时间的字段
3. 对需要插入当前时间的字段设置默认值为CURRENT_TIMESTAMP,如下所示:
CREATE TABLE `mytable` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
4. 完成以上步骤后,当我们往表中插入数据时,created_at字段会自动插入当前时间。
使用Datetime和Timestamp的区别在MySQL中,Datetime和Timestamp两种数据类型都可以表示日期和时间,但是它们有一些不同之处。首先,Datetime的存储需求更大,可以保存的范围也较广,从1000-01-01 00:00:00到9999-12-31 23:59:59,而Timestamp只能保存从1970-01-01 00:00:01到2038年之间的时间。其次,Datetime可以保存精确到微秒的时间,Timestamp只能保存精确到秒的时间。使用Datetime和Timestamp的默认值在MySQL中,Datetime和Timestamp两种数据类型可以使用CURRENT_TIMESTAMP来设置默认值,但是它们有一些不同之处。对于Datetime类型,设置了DEFAULT CURRENT_TIMESTAMP之后,表的修改时间(即表的最后更新时间)和记录的创建时间都会自动更新为当前时间;对于Timestamp类型,只有当记录第一次创建时会自动更新为当前时间,之后再更新记录时就不会再改变记录的创建时间了。结论通过设置DEFAULT CURRENT_TIMESTAMP来让MySQL在建表时自动插入当前时间是一种非常简单的方法,只需要在创建表时对需要插入当前时间的字段进行一下设置即可,希望本文对各位读者有帮助。