2017-08-25 83 views
0

我有表“worktickets”:MySQL的前缀时间戳的插入值

wt_id problem  created   follow_up1   follow_up2  updated 
    1   LCM  2017-08-24   visited client       2017-08-25 08:15       

的“更新”属性设置为“上更新当前的时间戳”。是否可以将此前缀添加到插入到follow_up1或follow_up2属性中的内容中? (例如:

例如: INSERT into worktickets(followup_2)VALUES('visited client again'); 我会得到:

wt_id problem  created   follow_up1   follow_up2        updated 
1   LCM  2017-08-24   visited client 2017-08-25 08:20: visited client again  2017-08-25 08:20 

一个怎样调整属性来follow_up1和follow_up2做到这一点?

回答

1

您的示例INSERT语句看起来有点薄,更像是UPDATE,并且可能不会导致所有其他列都被填充。

我实际上会推荐而不是将时间戳记作为前缀存储在其他列中。原因很简单:它占用空间,在概念上将数据非规范化,而不是必需的。相反,我建议您在查询时建立您想要的格式,例如

SELECT CONCAT(updated, ': ', follow_up2) AS follow_up2 
FROM worktickets 

话虽这么说,如果你真的想前缀的更新时间,你可以通过INSERT ... SELECT,例如做

INSERT INTO worktickets (follow_up2, ...) 
SELECT CONCAT(updated, ': visited client again'), ... 
FROM dual; 
+0

这很有道理。每个更新权限的“更新”列都会发生变化?如果我创建了链接到follow_up1的update_1,是否可以链接它们?即,当follow_up2被更新时,upated_1不再更新,只有update_2被更新,并且update_1保持与follow_up1被更新时一样。 – wazzahenry

+0

是的,每个时间戳将对应于插入/更新的时间,因为您指定了该值。不知道你的问题的其余部分。 –

+0

我会创建一个单独的问题。 – wazzahenry