Tengo una tabla que tiene miles de filas. Dado que la tabla no se construyó inicialmente con la columna created_at, no hay forma de obtener su marca de tiempo de creación. Sin embargo, es crucial comenzar a obtener las marcas de tiempo para las filas futuras.
¿Hay alguna forma de que pueda agregar una columna de marca de tiempo con el valor predeterminado AHORA () para que no llene los valores de las filas anteriores, sino solo para las futuras?
Si hago la ALTER
consulta, llena todas las filas con la marca de tiempo:
ALTER TABLE mytable ADD COLUMN created_at TIMESTAMP DEFAULT NOW()
fuente
UPDATE
no es necesario. Si agrega una columna predeterminada a una columna existente , las filas ya existentes no se verán afectadas. El valor predeterminado solo se completa si agrega una columna y el valor predeterminado en el mismo comando.Por ejemplo, crearé una tabla llamada
users
como se muestra a continuación y daré una columna llamadadate
un valor predeterminadoNOW()
Gracias
fuente
Prueba algo como: -
reemplazando
table_name
con el nombre de su tabla.fuente