欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

sqlserver调用http请求

程序员文章站 2022-06-12 17:48:29
...

首先: 开启使用扩展存储过程权限 sp_configure 'show advanced options', 1; GO RECONFIGURE; GO sp_configure 'Ole Automation Procedures', 1; GO RECONFIGURE; GO EXEC sp_configure 'Ole Automation Procedures'; GO 然后编写存储过程: CREATE PROCEDU

首先:

开启使用扩展存储过程权限
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure 'Ole Automation Procedures';
GO

然后编写存储过程:

CREATE PROCEDURE [dbo].[SP_HTTP]
@Parametro varchar(10) = NULL
AS
DECLARE @obj INT
DECLARE @sUrl varchar(200)
DECLARE @response INT

SET @sUrl = 'http://localhost/test/test.html?id=' + @Parametro

EXEC sp_OACreate 'MSXML2.ServerXMLHTTP', @obj OUT
EXEC sp_OAMethod @obj,'Open', NULL, 'GET', @sUrl, false
EXEC sp_OAMethod @obj,'Send'
EXEC sp_OAGetProperty @obj, 'responseText', @response OUT

SELECT @response [response]
EXEC sp_OADestroy @obj
RETURN


访问http请求需要用到扩展存储过程

不过网上看到说使用扩展存储过程有一定的危险

需要做好安全措施什么的

具体我也没多研究毕竟sqlserver只是玩玩

大概是要分配好权限,这些扩展函数默认是public的之类的