从TSQL调用Web服务的最佳方法

Joh*_*ock 1 t-sql sql-server web-services sql-server-2005 sql-server-2008

从TSQL调用Web服务的最佳方法是什么?我想写一些调用Web服务的触发器.是否有一个通常使用的最佳做法?

需要在SQL Server 2005和2008中处理实现

Jer*_*emy 6

我知道你可以在SQL Server中嵌入.NET CLR代码,但是我是否知道是否可以从触发器调用CLR代码.我想到了一个不同的体系结构,有一个表可以在你需要调用Web服务时插入记录,并运行一个外部应用程序来轮询表,并从那里调用Web服务.如果您尝试直接在触发器内调用Web服务,那么调试,错误日志等会有很多麻烦.只需2美分.

  • +1,我不认为在SQL事务中间调用Web服务是个好主意.每个触发器都使用触发语句在自动事务中运行.您将为整个事务保留锁定,如果您在触发命令和其他命令周围拥有自己的事务,则需要更多时间.触发器需要运行得非常快,否则系统会变慢. (3认同)

Phi*_*ley 6

从我听过的所有内容来看,从"数据库内"的任何地方进行网站调用并不是一种"最佳实践",并且在触发器内进行网络调用会让我感到畏缩[延迟,延迟,阻塞,死锁. .. oog].数据库是很好的后端,但前端非常差.拥有专门的应用程序进行网络和数据库协调可能会更好,更好.

将某些内容连接到SQL代理调用可能有效,但请注意,在作业步骤中没有"本地"方式来调用网站.他们可能是故意设计的.