1

我正在尝试创建一个简单的逻辑应用程序

  • 我想添加一个 SQL 连接器……所以我将我的连接信息提供给了一个 Azure SQL 数据库,该数据库与我的测试逻辑应用程序位于同一区域。它消失了至少 3 分钟,然后回来说无法建立连接。所以我可能输入了错误的内容......但我找不到修复我输入的内容的方法。无法再编辑连接属性。我唯一可以继续的是从资源组中删除连接器并重试。
  • 但是,删除连接器并不是一项简单的任务……当我从资源组中选择连接器时……​​我不断收到诸如“无法找到扩展程序“Microsoft_Azure_Microservices”和有时“加载磁贴错误”之类的错误。无论如何,我必须至少尝试了 5-6 次,它终于奏效了。我删除了连接器并重新开始。
  • 第二次尝试,我能够创建一个连接器......但我一定没有提供投票查询......所以它说没有触发操作,我不得不重新完成上述步骤。
  • 第三次尝试...我能够创建一个带有触发器的 SQL 连接器(通过提供可用数据和轮询查询),并添加了一个 Office 365 连接器。我运行了它......我原本希望只收到 3 封电子邮件,但我收到了大约 150 封电子邮件......然后我不得不禁用它!所以我想检查查询(数据可用和轮询)以确保我的更新语句编码正确......但同样......没有办法做到这一点。如果我去资源管理器,选择连接器并尝试进入设置,我会收到上述错误....非常令人沮丧。

你能给我一些指示我做错了什么吗?

4

1 回答 1

2

感谢您发布。了解您对卡在哪里感到沮丧。

要在部署后编辑该设置,请在 Azure 中浏览 -> API 应用程序 -> Microsoft SQL 连接器 -> 单击“主机”或“API 应用程序主机”下的链接 -> 设置 -> 应用程序设置

在该刀片的中途,您应该会看到 API 应用程序的所有配置设置。

至于为什么您的应用程序无限循环,SQL 连接器轮询查询要求您写回一些值(或删除行),以便行不会出现两次。换句话说,您需要以 API 应用程序知道它之前是否已读取该行的方式编写查询。示例轮询查询是

SELECT *, GetData() as 'PollTime' FROM [Order]
WHERE OrderStatus = 'ProcessedForCollection'
ORDER BY Id DESC;
UPDATE [Order] SET OrderStatus = 'ProcessedForFrontDesk'
    WHERE Id =
    (SELECT Id FROM [Order] WHERE OrderStatus = 'ProcessedForCollection' ORDER BY Id DESC)

随着可用性查询返回

SELECT COUNT(*) FROM [Order] WHERE OrderStatus = 'ProcessedForCollection'

希望这是有道理的。如果您还有其他问题,请告诉我。

于 2015-10-06T22:10:54.633 回答