目前我有一个存储过程可以对表进行一些更新,在完成后,我需要调用一个Web服务。
该过程使用事务,我需要在事务结束时调用Web服务。如果Web服务调用失败,则事务将被回滚。
我需要知道如何向SQL添加SOAP Web服务引用,以及如何从存储过程中调用该服务。
出于架构原因,排除了分布式事务/企业服务。
稍后编辑:此外,还排除了CLR程序集。已在我需要部署该过程的服务器上停用CLR。
答案 0 :(得分:2)
这个Simple-Talk tutorial向您展示了如何实现这一目标。
您也可以执行此操作using COM但它需要使用sp_OACreate,许多DBA都不允许您运行它(它需要打开配置选项)
答案 1 :(得分:0)
如果您可以控制此Web服务正在使用(绑定)的数据源,则可以考虑将此数据源作为链接服务器添加到SQL 2005服务器的选项。这样,您就可以使用OPENQUERY对此数据源执行SQL,而无需通过Web服务访问它。