我希望 SQL Server 向外部应用程序发送消息,SQL Server 可以吗?
我做了很多谷歌,但没有找到有用的材料/链接。任何适当的答案将不胜感激。
我希望 SQL Server 向外部应用程序发送消息,SQL Server 可以吗?
我做了很多谷歌,但没有找到有用的材料/链接。任何适当的答案将不胜感激。
理论上是可能的,因为 SQL Server 可以托管 CLR 过程,并且如果授予 EXTERNAL_ACCESS 权限,这些过程几乎可以做任何他们想做的事情,包括调用 Web 服务或 JMS 应用程序。
但不推荐,原因有很多(性能、安全性、可维护性、部署和配置、故障排除等等)。使用外部应用程序进行通信,让 SQL Server 只管理数据。
您可以根据需要使用 RAISERROR。
RAISERROR('My Error Message',0,1)
如果外部应用程序运行查询(如存储过程)并且查询有这一行,这将起作用。因此,例如,如果您知道应用程序正在运行sp_sample
,那么在 sp_sample 中:
ALTER PROCEDURE sp_sample
AS
BEGIN
--Procedure normal code
RAISERROR('My Error Message',0,1)
END
这将执行代码(例如 INSERT),然后将消息发送回应用程序。