从 SQL 向 Azure 服务总线队列添加消息
Posted
技术标签:
【中文标题】从 SQL 向 Azure 服务总线队列添加消息【英文标题】:Add message to Azure Service Bus Queue from SQL 【发布时间】:2017-07-28 10:07:21 【问题描述】:我的一个数据库表上有一个 SQL 触发器,并希望在执行 SQL 触发器时向我的 Azure 服务总线队列添加一条消息。
有没有人有如何做到这一点的 SQL 代码示例?
值得一提的是,SQL 将在 Azure 中运行的 SQL 数据库中运行。
请不要开始讨论使用 SQL 触发器的问题,否则这纯粹是针对上述问题的有效 SQL 代码。
【问题讨论】:
【参考方案1】:我已经使用带有 SQLserver 的逻辑应用程序实现了 Azure SQL 和服务总线解决方案(也是事件网格的解决方案),触发对表的新添加,标准存储过程然后生成相关的 JSON 有效负载并将其存储在表中逻辑应用有触发器的位置。当 JSON 有效负载写入表时,逻辑应用程序被触发,并将有效负载发送到服务总线队列或主题或事件网格主题 - 就像一个魅力。
【讨论】:
您好 Jonas,您能详细说明一下您是如何实现的吗?您是对 ServiceBus 进行了 REST 调用,还是直接使用了该程序集?【参考方案2】:不清楚您的 SQL 是在 VM 还是 SQL 数据库上运行。您可以做的是创建一个 CLR 存储过程并通过 REST APi 调用 Azure 服务总线。
https://blogs.msdn.microsoft.com/sqllive/2008/06/18/accessing-rest-based-web-services-using-sql-clr/
通过 REST API 的 Azure 服务总线队列
https://docs.microsoft.com/en-us/rest/api/servicebus/queues
【讨论】:
这个方法在这里详细实现:jsomers.be/archive/2018/12/20/…以上是关于从 SQL 向 Azure 服务总线队列添加消息的主要内容,如果未能解决你的问题,请参考以下文章