SQL Server中的套接字编程/信令更改

时间:2018-01-13 11:33:51

标签: sql sql-server sql-server-2017

有没有办法使用SQL语言与套接字通信? (为什么?)假设我手动打开SQL Server Management Studio并打开一个表然后手动插入一条记录(通过手动我想强调其间没有任何中间件)。此时,业务需要将插入的记录发信号通知另一个上下文(作为通知或报告(即网格视图等))。

我想到的解决方案是将插入的记录写入文件并使用另一个应用程序监视文件以进行更改(再次强调我不想通过中间件完成此操作),但是这样做方法不是实现此要求的标准方法,而是更多的解决方法。

是否有任何标准方法可以使用纯SQL Server语法/功能发出更改信号?

1 个答案:

答案 0 :(得分:2)

每当发生变化时,您都可以拥有一个SQLCLR例程来调用"某些东西"。在我工作的地方,我们将它用于从SQL Server到RabbitMQ的实时流式传输。在你的情况下,你必须在表上有一个触发器,它会调用例程。

在我们的例子中,我们总是通过存储过程更改数据,因此我们的过程调用SQLCLR例程。

您还可以使用Service Broker和外部激活。在我们的例子中,我们选择不这样做,因为表现不够好。

如果你愿意,我有一篇关于SQL Server的博客文章 - >使用SQLCLR进行RabbitMQ集成。显然它不一定是兔子,我们也通过套接字连接等来完成它。所以如果你有兴趣,帖子是here

希望这有帮助!

尼尔斯