Necesito hacer un seguimiento de la hora en que se insertó una fila en la base de datos, y la hora en que se modificó por última vez.Marca de tiempo para la creación de filas y la última modificación
Me trataron de crear dos columnas separadas, y utilizar CURRENT_TIMESTAMP
:
create table def (
id int,
creation timestamp
default CURRENT_TIMESTAMP,
modification timestamp
on update CURRENT_TIMESTAMP
);
Sin embargo, esto produjo un error:
ERROR 1293 (HY000): Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
¿Cuál es la mejor manera de hacer esto?
Estoy pensando en el procedimiento almacenado, pero en busca de una solución estándar. También me preocupan los privilegios de acceso, ya que pocos programas/cosas deberían poder tocar las marcas de tiempo como sea posible.
Aunque preferiría las respuestas de MySQL, también se agradecen las soluciones para otros RDBMS.
Creo que la modificación de la marca de tiempo "característica faltante" se ha corregido después de años en una de las versiones más actuales de MySQL. – hakre