MySQL 複数のTIMESTAMP DEFAULT CURRENT_TIMESTAMP

昔、MySQL で、複数のTIMESTAMP で
DEFAULT CURRENT_TIMESTAMP を宣言しようとして、

DELIMITER //
DROP TABLE IF EXISTS branch;
//
CREATE TABLE branch (
  id            INT NOT NULL AUTO_INCREMENT
, branch_name   VARCHAR(64) NOT NULL 
, created_at    TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
, update_at     TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
, PRIMARY KEY (id) 
) DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
//
DELIMITER ;


Error Code: 1293. Incorrect table definition; there can be only one TIMESTAMP column
 with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause

で、仕方なく、
https://oboe2uran.hatenablog.com/entry/2013/07/07/103023

https://oboe2uran.hatenablog.com/entry/2013/08/27/125127

と、していた。
でも、MySQL 5.7 以上なら、もうこのようなことはなく、
期待どおり、INSERT 時、UPDATE時、TIMESTAMP が自動で格納、更新されるようになる。

以下が、使える

TRUNCATE TABLE branch;
INSERT INTO branch (branch_name) VALUES ('a'),('b'),('c');
commit;

SELECT * FROM branch;
UPDATE branch SET branch_name = 'B' WHERE id = 2;
commit;

SELECT * FROM branch;