gpt4 book ai didi

mysql - 'on update'可以用在哪里?

转载 作者:行者123 更新时间:2023-11-30 01:10:25 25 4
gpt4 key购买 nike

我需要有关 MySQL 中更新的帮助。

目前,我需要在具有 keywords 相关的表 documents 中设置 createdupdated 行通过外键

因此,我为关键字创建一个触发器来更新相关文档的更新时间,并且我需要为Documents表创建另一个。

问题是我是否可以使用更新而不是触发器。

我尝试搜索on update语句,看看它是否指的是正在更新的整个记录​​,可以使用多少列等,但我没有找到任何MySQL文档的主题。

任何帮助将不胜感激。

最佳答案

要实现此问题,您不需要使用触发器。这是因为 created 具有逻辑意义,必须一劳永逸地编写。因此,当插入行时,您将传递类似 NOW() 的内容。

现在,对于更新,它具有最后更改时间戳的逻辑含义 - 然后通过定义时间戳字段,您可以指定 ON UPDATE CURRENT_TIMESTAMP子句:

CREATE TABLE t1 (   
s TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
dt DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP );

-就是这样。 IE。而在常见的情况下,对于更新事件,您必须使用触发器,当 MySQL 提供内置解决方案时就是这种情况。多说一句,当您希望使用它时,就是这种情况 - 也就是说,这就是它存在于 MySQL 中的原因。

对“何时”问题的常见答案是基于意见的,但逻辑“更新日期”的实现是一般目的。

关于mysql - 'on update'可以用在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19495124/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com