【问题标题】:Auto delete data from a table?自动从表中删除数据?
【发布时间】:2021-03-10 02:30:28
【问题描述】:

我在表格中有字段“计时器”和“名称”。我想将其设置为将行添加到该表时。计时器用完后,该行应自动删除。我该如何设置?我使用 Hasura 作为我的 GraphQL 客户端并拥有一个 React 应用程序?

【问题讨论】:

  • 请分享您迄今为止所做的尝试。基本的setTimeOut 和删除突变不会有帮助吗?
  • setTimeOut 是如何工作的?我的 Name 列如何知道它必须在 Timer 用完后自动删除。我还应该保留一个 created_at 字段来跟踪计时器吗?
  • 我可以在我的 graphql 客户端中自己做吗?
  • 你需要在你的问题中解释更多,回答只有这么多信息可能会导致错误的结果/错误的决定。

标签: sql reactjs graphql delete-operator hasura


【解决方案1】:

首先,您可能想要使用expires 之类的东西,而不是timer,因为您可以有一个字段来跟踪此功能。如果你有一个created_at,那么没有真正的功能差异。

这里有两个主要选项。

1:您可以拥有一个 Hasura cron trigger,它每 X 次触发一次并检查 now() > expires(或 > created_at + timer 等...)并删除它们。调用此 webhook 时,您必须在某处编写一些代码才能运行。这可能是一个很好的无服务器用例。有示例和代码生成工具。在文档中查看更多信息。

2:您可以使用检查此条件的where 子句跟踪view。这实际上不会从您的数据库中删除记录。但是视图的工作就像你确实删除了一样。根据您的需要,这可能是好事也可能是坏事......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-18
    • 1970-01-01
    • 2019-08-23
    • 2019-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-18
    相关资源
    最近更新 更多