mysql5.5和5.6的一些區別
阿新 • • 發佈:2018-12-31
- 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 ;