Azure 逻辑应用程序 - Twitter 和 MS SQL 连接器问题

Posted

技术标签:

【中文标题】Azure 逻辑应用程序 - Twitter 和 MS SQL 连接器问题【英文标题】:Azure Logic App - Twitter and MS SQL Connector issues 【发布时间】:2015-08-10 05:13:09 【问题描述】:

我创建了一个 Azure Logic 应用程序,它搜索包含 ChinarTrading 的推文,然后将它们保存在 SQL 数据库中。以下是我面临的问题:

Twitter 连接器仅在我用于身份验证的 twitter 帐户中搜索推文。如果从其他 Twitter 帐户添加带有 ChinarTrading 的推文,则搜索结果中不会返回该推文。 Twitter 连接器再次返回相同的推文,如何跳过旧推文。 在 SQL 连接器中,我正在使用插入操作,如果不存在(未找到推文文本),如何添加插入等条件。

【问题讨论】:

【参考方案1】:

不要使用插入操作,而是使用存储过程。在存储过程中执行 IF EXISTS UPDATE ELSE INSERT。

IF EXISTS (SELECT * FROM Tweets WHERE [TweetId] = 'SomeId')
BEGIN
    --UPDATE HERE
END
ELSE
BEGIN
   -- INSERT HERE
END

【讨论】:

似乎没有运行程序的选项,连接器只有插入、更新和删除操作。 @SajadDeyargaroo 在一个相关主题上,我有一个问题:如果我们使用 Azure Logic Apps 向 SQL Server 添加推文,从以下列表中,应该按照什么顺序执行操作?:Twitter动作、Twitter 触发器、Tweeter 连接、SQL Server 连接【参考方案2】:

如果尚不存在,则无法直接添加诸如插入之类的条件。 您可以尝试使用 deisgner 中的“添加条件”来执行此操作。

所以也许您可以使用“SQL Azure-Get Rows”然后添加“条件”,然后根据条件的结果添加操作“SQL Azure - Insert Row”

插入行API调用POST: /datasets/default/tables/table/items,只有tableitem两个参数(SQL中插入到指定表的行) 而 Get Rows 调用允许您通过 ($skip, $top, $filter, $orderby) 进行查询

至于推文,目前无法跳过旧推文,因为 API 调用根据 Twitter API documentation 仅采用 searchQuerymaxResults 参数

【讨论】:

以上是关于Azure 逻辑应用程序 - Twitter 和 MS SQL 连接器问题的主要内容,如果未能解决你的问题,请参考以下文章

Azure 逻辑应用返回多个响应

Azure - 安全 API 应用程序,因此只有逻辑应用程序和 Web 应用程序可以访问

对 Azure 应用服务的逻辑应用身份验证

从 Azure 函数获取 401 时,Azure 逻辑应用停止执行

将值从 Azure 逻辑应用程序传递到 HttpTrigger Azure 函数

如何从 Azure 数据工厂安全地调用 Azure 逻辑应用