mysql5.5和5.6的一些区别
其他
2018-06-25 10:24:10
阅读次数: 2
- timestamp
- 5.5中 直接写timestamp不加长度 5.6 中 写的timestamp(3)
- datatime
- 5.5中 直接写datetime 不加长度 5.6中 可以添加长度(3)
问题:
- [HY000][1293] Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
- 5.5不能使用两个timestamp列, 5.6就可以忽略这个问题
- 使用触发器实现这样的效果;
CREATE TABLE `example` (
`id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
`created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`lastUpdated` DATETIME NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
DROP TRIGGER IF EXISTS `update_example_trigger`;
DELIMITER //
CREATE TRIGGER `update_example_trigger` BEFORE UPDATE ON `example`
FOR EACH ROW SET NEW.`lastUpdated` = NOW()
//
DELIMITER ;
转载自blog.csdn.net/q669239799/article/details/77918318