【问题标题】:Is it possible to create a query for this matter?是否可以针对此事创建查询?
【发布时间】:2016-05-11 14:23:50
【问题描述】:

假设我有一个不断更新的 API。基本上我从一个站点得到它,它是 json 格式的。但不是使用通常的 GET & POST 方法,我想知道是否可以使用 postgresql 获取它。

我要做的是创建一个日常例程,它将使用 pgadmin 运行一个函数,以根据 API 中的 json 数据更新服务器中的表。所以它每天自动运行,无需手动输入。

那么是否有可能以查询的形式创建一个 GET 方法或类似的东西?还是有其他方法可以处理这种或问题?基本上每天自动使用API​​获取json数据。

【问题讨论】:

  • 我完全不明白你的意思,你能澄清一下吗?
  • 示例:“example.com/user.json”。基于此示例链接,如何使用 postgreqsql 查询获取 json 数据?这可能吗?

标签: json postgresql api get


【解决方案1】:

是的,这是可能的,但它并不是 SQL 的理想用例。

您可以在 Postgres 查询中使用 this 向站点发出 GET 和 POST 请求,您将获得 JSON 作为字符串返回,您可以将其存储在 JSON 字段中。如果您无法为您的 Postgres 数据库安装扩展,我认为 Postgres 中没有内置任何东西来发出 HTTP 请求。

您可以使用一些 JSON functions 来解析 JSON 有效负载中的信息,但它们本身无法执行任何复杂的逻辑,因此您可能会创建一个相当大的查询来尝试解析大量数据。

最后,要每天安排查询,您可以使用pgAgent。这也需要额外安装,因为它还没有内置到 Postgres 中。

我说这可能不是一个好主意,因为您可能应该在数据存储和应用程序逻辑之间保持分离,因为这不是 Postgres 旨在做的事情。使用连接到 Postgres 数据库的简单脚本或应用程序以及提供数据的站点,捕获和操作数据会容易得多。有些语言更适合处理这种情况,这将比大量 SQL 查询更易读且更易于维护。

如果您提供一些有关您为什么这样做的具体场景的更多信息,我可以尝试给您一个更具体和有见地的答案。

【讨论】:

  • 感谢您的信息。基本上我有一个电子商务数据库的表格,每个项目的价格通常必须根据货币汇率进行更新。我不想每天更改汇率,所以我正在考虑一种每天自动更新汇率表的方法。
  • 如果是这种情况,我强烈建议您制作一个每天自动运行的小脚本。从长远来看,它将更容易阅读和维护。如果你打算用 SQL 来做,我没有足够的关于这些工具的具体知识来帮助你,所以如果你遇到更多麻烦,你可能不得不发布第二个问题。
猜你喜欢
  • 2015-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-23
  • 1970-01-01
相关资源
最近更新 更多