(sqlServer 2008 + VS2010)

首先,对服务器进行配置。

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO

然后实现SQL调用WebService接口,代码如下:

DECLARE @ServiceUrl AS NVARCHAR(1000)
DECLARE @UrlAddress VARCHAR(500)
--------WebService地址:以http开头,结尾带斜杠,
--例如'http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx/'
SET @UrlAddress ='--地址--' DECLARE @FunName VARCHAR(50)
--- WebService中调用的方法名:例如‘HelloWorld’
SET @FunName='Add' --- 以下参数对应WebService中参数的[参数名]
DECLARE @p1 VARCHAR(800),@p2 VARCHAR(100),@p3 VARCHAR(100)
SET @p1='a'
SET @p2='b'
SET @p3='c'
--- 以下参数对应WebService中参数的[参数值]
DECLARE @p1_Value VARCHAR(100),@p2_Value VARCHAR(100),@p3_Value VARCHAR(100)
SET @p1_Value = '1'
SET @p2_Value = '2'
SET @p3_Value = '3' SET @ServiceUrl=@UrlAddress+@FunName+'?'
+@p1+'='+@p1_Value+'&'+@p2+'='+@p2_Value+'&'+@p3+'='+@p3_Value --- 创建 OLE 对象的实例。
--- 返回的对象令牌必须是数据类型为 int 的局部变量。 该对象令牌用于标识所创建的 OLE 对象,并用于调用其他 OLE 自动化存储过程。
DECLARE @Object AS INT
DECLARE @ResponseText AS VARCHAR(8000) EXEC sys.sp_OACreate 'MSXML2.XMLHTTP',@Object OUT;
EXEC sys.sp_OAMethod @Object,'open',NULL,'get',@ServiceUrl,'false'
EXEC sys.sp_OAMethod @Object,'send'
EXEC sys.sp_OAMethod @Object,'responseText',@ResponseText OUTPUT SELECT @ResponseText --- 当不再需要该对象时,调用 sp_OADestroy 释放使用 sp_OACreate 创建的对象实例。
EXEC sys.sp_OADestroy @Object GO

此上可参见:https://www.cnblogs.com/davidhou/p/5868136.html

本例中使用的WebService方法 Add:

[WebMethod(Description = "Add —— 测试方法")]
public int Add(int a, int b, int c)
{
return a + b + c;
}

调用时遇到的问题:在SQL中报错:请求格式无法识别。

解决方法:在Web.config System.Web节点下添加如下内容

<webServices>
<protocols>
<add name="HttpPost"/>
<add name="HttpGet"/>
</protocols>
</webServices>

SQLServer调WebService & 错误解决:请求格式无法识别的更多相关文章

  1. .asmx支持post请求或者get请求调用(WebService "因 URL 意外地以 结束,请求格式无法识别" 的解决方法)

    使用Post调用以asmx形式提供的webservice时,在本机调试没有调用问题.一旦部署至服务器后会提示如下信息: <html> <head> <title>因 ...

  2. WebService 通过POST方式访问时候,因 URL 意外地以“/方法名”结束,请求格式无法识别 解决办法

    因URL意外地以“/方法名”结束,请求格式无法识别. 执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息. 解决方法:在webservice的we ...

  3. ASP.NET WebServices 因 URL 意外地以“/HelloWorld”结束,请求格式无法识别。

    今天在使用Asp.net做一个WebServices时通过Get方式调用方法时却出现了以下错误(仅在Get请求下,POST下正常)   在网络和MSDN上了解到WebServices默认只启用 Htt ...

  4. WebService "因 URL 意外地以 结束,请求格式无法识别" 的解决方法

    最近在做一个图片上传的功能,js调用用webservice进行异步访问服务器,对于不是经常用webservice的菜鸟来说,经常会遇到以下的问题(起码我是遇到了) 在页面上写了js调用代码如下所示: ...

  5. WebService 出现因 URL 意外地以“/HelloWorld”结束,请求格式无法识别。

    要在webservice的web.config文件中的 <system.web> 节点下加入: <webServices>    <protocols>       ...

  6. 因 URL 意外地以“/HelloWorld”结束,请求格式无法识别。

    WebService中发布之后出现这个错误, 解决方法: web.config文件中的 <system.web> 节点下加入:<webServices>    <prot ...

  7. 因 URL 意外地以“/HelloWorld”结束,请求格式无法识别

    http://www.cnblogs.com/AngelLee2009/p/3540527.html

  8. 因 URL 意外地以“/HelloWorld”结束,请求格式无法识别。

    web.config文件中的 <system.web> 节点下加入:<webServices>    <protocols>        <add name ...

  9. nginx解决超长请求串(413 request Entity too Large错误解决办法)

    <div class="hide-article-box text-center" style="display: block;"> <a c ...

随机推荐

  1. JDK命令行工具

    jinfo(Configuration Info for Java)的作用是实时地查看和调整虚拟机各项参数 jmap(Memory Map for Java)命令用于生成堆转储快照(一般称为heapd ...

  2. vue--使用vue-cli构建项目

    webpack是现在较流行的前端自动化工具,该工具可以帮助开发者打包代码,以减少需要手动的工作,可以提高开发效率. vue中提供了一个脚手架工具vue-cli,这个工具已经将webpack配置好了,使 ...

  3. A_Pancers团队作业4—基于原型的团队项目需求调研与分析

    任务1:实施团队项目软件用户调研活动. (1)用户调研对象:我们的项目软件是基于安卓系统的音乐播放器,以设计出操作简单的音乐播放器为目的,所以本次用户调研的对象主要以身边的老人为主,对他们听音乐,听戏 ...

  4. Redis中Pipeline的使用

    通过Java访问Redis,我们一般使用Jedis,示例代码如下: Jedis jedis = new Jedis("172.23.88.107", 6379); jedis.se ...

  5. ionic 解决APP安装到android上 状态栏显示黑色

    首先移除原本的 cordova-plugin-statusbar 运行命令: cordova plugin rm cordova-plugin-statusbar 最后需要重新安装: cordova ...

  6. Bean的Scope

    Bean的scope: 1.Singleton(单例): 一个Spring容器只有以这个Bean实例. 2.prototype(多例): 每次调用新建一个Bean的实例. 3.request:一个ht ...

  7. windows service 2008 R2 安装net4.6环境失败,windows service 2008 R2 升级sp1问题

    一.错误 1.因为我的程序是以vs2017开发的,在windows service 2008 R2  IIS部署项目文件报出错误,因此要安装net4.6的环境. 2.windows service 2 ...

  8. 『流畅的Python』第1~4章笔记_数据结构、编码

    由于1~4章内容零散且基础,所以统计一下涉及到的内容,记录一下,方便查阅(第一张图右键新页面打开即可看到清晰大图)

  9. 『Python』socket网络编程

    Python3网络编程 '''无论是str2bytes或者是bytes2str其编码方式都是utf-8 str( ,encoding='utf-8') bytes( ,encoding='utf-8' ...

  10. Codeforces Round #349 (Div. 1)E. Forensic Examination

    题意:给一个初始串s,和m个模式串,q次查询每次问你第l到第r个模式串中包含\(s_l-s_r\)子串的最大数量是多少 题解:把初始串和模式串用分隔符间隔然后建sam,我们需要找到在sam中表示\(s ...