Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.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_Timestamp - Fatal编程技术网

Mysql 更新记录时如何防止时间戳字段更新其值

Mysql 更新记录时如何防止时间戳字段更新其值,mysql,timestamp,Mysql,Timestamp,假设我以这种方式输入一个记录 "insert into table (value,time) VALUES ('4',NOW())" 这就是我更新值的方式 "update table set value = '5' WHERE id = '1'" 问题是,对于最后一个查询,时间值会再次用当前的时间戳更新,因此时间是错误的 我怎样才能防止这种情况?(我希望时间的值在插入时保持当前的时间戳,而不是更新) PD:我试图使用sqlBuddy从行中删除值CURRENT_TIMESTAMP,但它会再次应

假设我以这种方式输入一个记录

"insert into table (value,time) VALUES ('4',NOW())"
这就是我更新值的方式

"update table set value = '5' WHERE id = '1'"
问题是,对于最后一个查询,时间值会再次用当前的时间戳更新,因此时间是错误的

我怎样才能防止这种情况?(我希望时间的值在插入时保持当前的时间戳,而不是更新)


PD:我试图使用sqlBuddy从行中删除值CURRENT_TIMESTAMP,但它会再次应用,就像如果保存位置没有更改一样。

只需将该字段设置为带有默认值CURRENT_TIMESTAMP的DateTime字段。因此,它将在创建新记录时设置,但仅在需要时更新。

只需将该字段设置为DateTime字段,默认值为CURRENT_TIMESTAMP。因此,它将在创建新记录时设置,但仅在需要时更新。

您应该将默认值设置为
CURRENT\u TIMESTAMP

CREATE TABLE t1 (
  ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

这将减轻您的痛苦。

您应该将默认值设置为
CURRENT\u TIMESTAMP

CREATE TABLE t1 (
  ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

这将减轻您的痛苦。

您只需在更新查询中添加字段的当前值,如下所示:

update table set value = '5', timestamp_value = timestamp_value WHERE id = '1'

您只需在更新查询中添加字段的当前值,如下所示:

update table set value = '5', timestamp_value = timestamp_value WHERE id = '1'

TIMESTAMP NOT NULL在更新当前\u TIMESTAMP属性时删除默认的当前\u TIMESTAMP


它在PhpmyAdmin上工作。

时间戳非空默认当前时间戳在更新当前时间戳属性时删除


它适用于PhpmyAdmin。

若要更改表,请创建一个新列time2,它们都将具有当前日期。然后将以前的时间值复制到time2,然后删除time列,然后将time2重命名为time。若要更改表,请创建一个新列time2,它们都将具有当前日期。然后将以前的时间值复制到time2,然后删除时间列,然后将time2重命名为time。是否尝试将
time
date
创建为字段类型?是否尝试将
time
date
创建为字段类型?我不知道这是否是最好的解决方案,但在这种情况下对我来说是最简单的。谢谢我不知道这是否是最好的解决方案,但在这种情况下,对我来说是最简单的。谢谢