Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何加上「;更新当前时间戳时“;到现有表列_Mysql - Fatal编程技术网

Mysql 如何加上「;更新当前时间戳时“;到现有表列

Mysql 如何加上「;更新当前时间戳时“;到现有表列,mysql,Mysql,在MYSQL中,我有一个列,它是带有数据类型timestamp的ts_活动,默认值为当前时间戳。我想添加更新,将当前时间戳应用于此列值 我无法让alter query执行此操作。在创建新表及其列时,我可以添加它,但不能通过添加更新应用当前时间戳来修改现有列 有人能告诉我处理这个问题的确切方法吗。我们可以在创建表之后更改它吗 谢谢尝试此查询- ALTER TABLE table_name CHANGE COLUMN column_name column_name TIMESTAMP NULL

在MYSQL中,我有一个列,它是带有数据类型timestamp的ts_活动,默认值为当前时间戳。我想添加更新,将当前时间戳应用于此列值

我无法让alter query执行此操作。在创建新表及其列时,我可以添加它,但不能通过添加更新应用当前时间戳来修改现有列

有人能告诉我处理这个问题的确切方法吗。我们可以在创建表之后更改它吗

谢谢

尝试此查询-

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

注意,在表中,只有一个字段可以使用“更新当前时间戳”选项。

Devart的建议会起作用,但如果我不重命名列,我更喜欢使用
修改列
,而不是
更改列

我还假设您的ts_activity列不可为NULL,因为您有一个默认值,所以我将其设置为notnull,但这取决于您

这是我将使用的声明:

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

同意空值/非空值。应该像以前一样指定它。如何在特定时区中存储更新时的
CURRENT\u TIMESTAMP
值?