Как добавить текущую временную метку "Текущее обновление" в существующий столбец таблицы

У меня есть столбец: ts_activity с временной меткой типа данных в MYSQL и значением по умолчанию текущей меткой времени. Я хочу добавить в update применить текущую метку времени к этому значению столбца.

Я не могу получить альтернативный запрос, чтобы сделать это. в то время как создавать новую таблицу и ее столбец я могу добавить это, но не могу изменить существующий столбец, добавив в update применить текущую временную метку.

Может кто-нибудь сказать мне точный запрос, чтобы справиться с этим. Можем ли мы изменить это после создания таблицы.

Спасибо

Ответ 1

Предложение Devart будет работать, но я предпочитаю использовать MODIFY COLUMN вместо CHANGE COLUMN, если я не переименовываю столбец.

Я также предполагаю, что ваш столбец ts_activity не имеет значения NULL, поскольку у вас есть значение по умолчанию, поэтому я устанавливаю его в NOT NULL, но это зависит от вас.

Это выражение, которое я бы использовал:

ALTER TABLE your_table
  MODIFY COLUMN ts_activity TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

Ответ 2

Попробуйте этот запрос -

ALTER TABLE table_name
  CHANGE COLUMN column_name column_name TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

Обратите внимание, что в таблице только одно поле может быть с параметром "ON UPDATE CURRENT_TIMESTAMP".