首页 >数据库 >mysql教程 >sqlserver调用http请求

sqlserver调用http请求

WBOY
WBOY原创
2016-06-07 15:15:192198浏览

首先: 开启使用扩展存储过程权限 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的之类的




声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn