MySQL 5.6.5+ hỗ trợ dynamic default cho DATETIME/TIMESTAMP: DEFAULT CURRENT_TIMESTAMP.
Tạo bảng
mysql> CREATE TABLE DefaultDateTimeDemo (
-> MyTime DATETIME DEFAULT CURRENT_TIMESTAMP
-> );
Query OK, 0 rows affected (0.59 sec)
INSERT không truyền giá trị
mysql> INSERT INTO DefaultDateTimeDemo VALUES(); Query OK, 1 row affected (0.13 sec)
Kiểm tra
mysql> SELECT * FROM DefaultDateTimeDemo;
+---------------------+ | MyTime | +---------------------+ | 2018-11-09 11:58:47 | +---------------------+ 1 row in set (0.00 sec)
So sánh với NOW()
mysql> SELECT NOW();
+---------------------+ | NOW() | +---------------------+ | 2018-11-09 11:58:40 | +---------------------+ 1 row in set (0.00 sec)
Hai giá trị gần như trùng khớp (chênh lệch vài giây do thời gian thực thi).