SQLServer数据库调用WebService
小标 2018-07-18 来源 : 阅读 2621 评论 0

摘要:本文主要向大家介绍了SQLServer数据库调用WebService,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

本文主要向大家介绍了SQLServer数据库调用WebService,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

1.Ole Automation Procedures 服务器配置选项

当启用 OLE Automation Procedures 时,对 sp_OACreate 的调用将会启动 OLE 共享执行环境。

可以使用 sp_configure 系统存储过程来查看和更改Ole Automation Procedures 选项的当前值。

[sql] view plain copy

1. sp_configure 'show advanced options', 1;  

2. GO  

3. RECONFIGURE;  

4. GO  

5. sp_configure 'Ole Automation Procedures', 1;  

6. GO  

7. RECONFIGURE;  

8. GO  

[sql] view plain copy

1. declare @ServiceUrl as varchar(1000)   

2. declare @UrlAddress varchar(500)  

3.   

4. --WebService地址:以http开头,结尾带斜杠,例如'//webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/'   

5. set @UrlAddress = '//webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/'  

6.   

7. declare @FunName varchar(50)  

8. --WebService中调用的方法名:例如'getMobileCodeInfo'  

9. set @FunName = 'getMobileCodeInfo'     

10.   

11. --以下参数对应WebService中4个参数的[参数名]  

12. declare @P1 varchar(800),@P2 varchar(100)  

13. set @P1 = 'mobileCode'  

14. set @P2 = 'userid'  

15.   

16. declare @P1_Value varchar(100),@P2_Value varchar(100)  

17. set @P1_Value = '13800138000'  

18. set @P2_Value = ''  

19.   

20. set @ServiceUrl = @UrlAddress + @FunName + '?' + @P1 + '=' + @P1_Value +'&' + @P2 + '=' + @P2_Value                         

21.                     

22. Declare @Object as Int  

23. Declare @ResponseText as Varchar(8000)  

24.                     

25. Exec sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;  

26. Exec sp_OAMethod @Object, 'open', NULL, 'get',@ServiceUrl,'false'  

27. Exec sp_OAMethod @Object, 'send'  

28. Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT  

29.        

30. Select @ResponseText       

31. Exec sp_OADestroy @Object  

32. GO  


 

2.编写SQL代码并执行

第二种访问方式,参数可带入中文

[sql] view plain copy

1. Declare @ResponseText as Varchar(8000)  

2. declare @UrlAddress  varchar(2000) ,@status int   

3.     set @UrlAddress = '//192.168.1.1/TestService.asmx/HelloWorldOne?usrs_id=1&dept=159'  

[sql] view plain copy

1.    set @status =0    

2.      

3. ECLARE @object int,     

4.    @errSrc int    

5.    /*初始化对*/    

6.    EXEC @status = SP_OACreate 'Msxml2.ServerXMLHTTP.3.0', @object OUT;     

7.    IF @status <> 0    

8.    BEGIN     

9.     EXEC SP_OAGetErrorInfo @object, @errSrc OUT     

10.     RETURN     

11.    END     

12.    /*创建链接*/    

13.    EXEC @status= SP_OAMethod @object,'open',NULL,'get',@UrlAddress    

14.    IF @status <> 0    

15.    BEGIN     

16.     EXEC SP_OAGetErrorInfo @object, @errSrc OUT     

17.     RETURN     

18.    END     

19.    EXEC @status=SP_OAMethod @object,'setRequestHeader','Content-Type','application/x-www-form-urlencoded'    

20.    /*发起请求*/    

21.    EXEC @status= SP_OAMethod @object,'send',NULL    

22.      

23.    Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT  

24.    Select @ResponseText       

25. Exec sp_OADestroy @Object  

本文由职坐标整理并发布,了解更多内容,请关注职坐标SQL Server数据库频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程