我正在开发一个函数,它比较创建日期和修改图像的日期,并使用PHP + MySQL返回每个案例的状态。但是,我意识到我试图比较的数据最终都使用MySQL中的CURRENT_TIMESTAMP,因此每当它们被更新时,它们最终都具有相同的日期。
有没有办法只保存数据插入数据库的第一个日期(创建日期),所以它不会根据修改日期而改变?
感谢任何帮助,提前谢谢!
更新
我的timestamp列使用“DEFAULT CURRENT_TIMESTAMP”而不是“ON UPDATE CURRENT_TIMESTAMP”选项进行配置。还有其他工作吗?
UPDATE2:
请参阅下面的表格定义。
CREATE TABLE IF NOT EXISTS `images` (
`id` varchar(50) NOT NULL,
`patientid` varchar(8) NOT NULL,
`caseid` varchar(25) NOT NULL,
`image_name` varchar(256) NOT NULL,
`status` int(1) unsigned NOT NULL,
`comments` varchar(4000) DEFAULT NULL,
`mod_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
答案 0 :(得分:1)
好像你的timestamp列配置了“ON UPDATE CURRENT_TIMESTAMP”选项,它会自动更新它们。
由于似乎没有办法在列上更改此内容,因此您必须创建一个没有该选项的新列。
有关详细信息,请参阅TIMESTAMP手册,请访问timestamp-initialization