假设表有3个字段:id、name、update_time,希望在新增记录时能自动设置update_time字段为当前时间
设置DEFAULT CURRENT_TIMESTAMP即可
CREATE TABLE `test` (
`id` int NOT NULL,
`name` varchar(255),
`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) COMMENT='';
如果使用Navicat建表就是在图红框中选择默认值为CURRENT_TIMESTAMP
如果希望在更新记录时能自动更新update_time字段
设置ON UPDATE CURRENT_TIMESTAMP
CREATE TABLE `test` (
`id` int NOT NULL,
`name` varchar(255),
`update_time` timestamp NOT NULL ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) COMMENT='';
如果使用Navicat建表就是在图绿框中勾选上根据当前时间戳更新
这样设置之后,即使直接通过Navicat工具修改了name字段,那么update_time也会自动更新,除非手动设置了update_time字段
-
顶
- 0
-
踩
- 0
- 上一篇log4j.xml警告log4j:WARN The content of element type "log4j:configuration" must match "(renderer*,appen
- 下一篇log4j配置
DROP TABLE IF EXISTS `tb_person`;
CREATE TABLE `tb_person` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT NULL,
`english_name` varchar(50) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
`sex` varchar(4) DEFAULT NULL,
`birthday` date DEFAULT NULL,
`description` varchar(100) DEFAULT NULL,
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;