自动删除 table 中的数据?

Auto delete data from a table?

我在 Table 中有字段 'Timer' 和 'Name'。我想将其设置为向 table 添加一行时的情况。该行应在计时器用完后自动删除。我该如何设置?我正在使用 Hasura 作为我的 GraphQL 客户端并有一个 React 应用程序?

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

这里有两个主要选项。

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

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