A partir de MySQL 5.6.5, puede usar DATETIME escriba con un valor predeterminado dinámico:
CREATE TABLE foo (
creation_time DATETIME DEFAULT CURRENT_TIMESTAMP,
modification_time DATETIME ON UPDATE CURRENT_TIMESTAMP
)
O incluso combinar ambas reglas:
modification_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Referencia:
https://dev.mysql .com/doc/refman/5.7/en/timestamp-initialization.html
https://optimize -this.blogspot.com/2012/04/datetime-default-ahora-finalmente-disponible.html
Antes de 5.6.5, debe usar el TIMESTAMP tipo de dato, que se actualiza automáticamente cada vez que se modifica el registro. Desafortunadamente, sin embargo, solo un TIMESTAMP actualizado automáticamente el campo puede existir por tabla.
CREATE TABLE mytable (
mydate TIMESTAMP
)
Ver:https://dev.mysql.com/doc /refman/5.1/en/create-table.html
Si desea evitar que MySQL actualice el valor de la marca de tiempo en UPDATE (para que solo se active en INSERT ) puede cambiar la definición a:
CREATE TABLE mytable (
mydate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)