SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录
- 需求
- 分析
- 解决
- 第 1 步:前置条件,启用 OLE 自动化
- 方式 1:使用 SQL 实现启用 OLE 自动化
- 方式 2:Sql Server 2005启动OLE自动化
- 方式 3:Sql Server 2008启动OLE自动化
- 第 2 步:创建存储过程
- 第 3 步:创建触发器
- 扩展 - 如何调试?
- 第 1 步:登录 SQL Server 2008
- 第 2 步:编写 INSERT 语句
- 第 3 步:开始“逐语句调试”
- 参考
需求
在 SQL Server 2005 中,当执行 insert 语句时,能够调用 HTTP 请求,将数据传递出去。
分析
技术实现:创建一个 Insert 触发器,当 Insert 动作执行时,会执行 Insert 触发器。在 Insert 触发器中调用存储存储,该存储过程将插入的数据作为 HTTP POST 请求的参数,执行 HTTP 请求发送数据给服务端进行处理。
功能拆解:
1、先用存储过程实现 HTTP POST 请求
2、 再用触发器调用存储过程,并传递需要的参数
解决
第 1 步:前置条件,启用 OLE 自动化
存储过程需要执行 HTTP 请求,会使用 OLE 自动存储过程 (Transact-SQL)。
如果未开启 OLE 自动化,则执行会报错。
方式 1:使用 SQL 实现启用 OLE 自动化
执行如下 SQL,即可实现