IF NOT object_id('proc_CallWebServices') IS NULL
DROP PROCEDURE proc_CallWebServices
GO
CREATE PROCEDURE proc_CallWebServices(
@parametor VARCHAR(20) = NULL
)
AS
BEGIN
DECLARE @obj INT
DECLARE @ValordeRegreso int
DECLARE @sUrl VARCHAR(200)
DECLARE @response VARCHAR(8000)
DECLARE @hr INT
DECLARE @src VARCHAR(255)
DECLARE @desc VARCHAR(255) SET @sUrl = 'http://mys-zhangj06:802/WebService1.asmx/HelloWorld' EXEC sp_OACreate 'MSXML2.ServerXMLHTTP', @obj OUT
EXEC sp_OAMethod @obj, 'open',NULL,'GET',@sUrl,false
EXEC sp_OAMethod @obj, 'send'
EXEC sp_OAMethod @obj, 'responseText',@response OUT SELECT @response [response]
EXEC sp_OADestroy @obj
RETURN
END
GO EXEC proc_CallWebServices '' IF NOT object_id('HTTP_POST') IS NULL
DROP PROCEDURE HTTP_POST
GO CREATE PROCEDURE [dbo].[HTTP_POST]
(
@sUrl VARCHAR(500) ,
@response VARCHAR(500) OUT
)
AS
BEGIN
DECLARE @obj INT ,
@hr INT ,
@status INT ,
@msg VARCHAR(255) EXEC @hr = sp_OACreate 'MSXML2.ServerXMLHttp', @obj OUT
IF @hr <> 0
BEGIN
RAISERROR('sp_OACreate MSXML2.ServerXMLHttp.3.0 failed', 16,1)
RETURN
END EXEC @hr = sp_OAMethod @obj, 'open', NULL, 'POST', @sUrl, false
IF @hr <> 0
BEGIN
SET @msg='sp_OAMethod Open failed'
GOTO eh
END EXEC @hr = sp_OAMethod @obj, 'setRequestHeader', NULL, 'Content-Type','application/x-www-form-urlencoded'
IF @hr <> 0
BEGIN
SET @msg='sp_OAMethod setRequestHeader failed'
GOTO eh
END EXEC @hr = sp_OAMethod @obj, send, NULL, ''
IF @hr <> 0
BEGIN
SET @msg='sp_OAMethod Send failed'
GOTO eh
END EXEC @hr = sp_OAGetProperty @obj, 'status', @status OUT
IF @hr <> 0
BEGIN
SET @msg='sp_OAMethod read status failed'
GOTO eh
END IF @status <> 200
BEGIN
SET @msg='sp_OAMethod http status '+STR(@status)
GOTO eh
END EXEC @hr = sp_OAGetProperty @obj, 'responseText', @response OUT
IF @hr <> 0
BEGIN
SET @msg='sp_OAMethod read response failed'
GOTO eh
END EXEC @hr = sp_OADestroy @obj
RETURN
eh:
EXEC @hr = sp_OADestroy @obj
RAISERROR(@msg, 16, 1)
RETURN
END GO DECLARE @res VARCHAR(500)
EXEC [HTTP_POST] 'http://mys-zhangj06:802/WebService1.asmx/GetTime?date=zzz',@res OUT
SELECT @res

SQL调用Webservices的更多相关文章

  1. C#利用WinForm调用WebServices实现增删改查

    实习导师要求做一个项目,用Winform调用WebServices实现增删改查的功能.写下这篇博客,当做是这个项目的总结.如果您有什么建议,可以给我留言.欢迎指正. 1.首先,我接到这个项目的时候,根 ...

  2. ajax调用WebServices服务方法和传参调用WebServices注意事项

    先演示下ajax是如何调用WebServices中的方法    1.新建一个页面default.aspx,一个Web服务    在页面中引用jQuery文件. <script src=" ...

  3. PL/SQL --> 动态SQL调用包中函数或过程

    动态SQL主要是用于针对不同的条件或查询任务来生成不同的SQL语句.最常用的方法是直接使用EXECUTE IMMEDIATE来执行动态SQL语句字符串或字符串变量.但是对于系统自定义的包或用户自定的包 ...

  4. php利用SoapClient调用webservices

    原文:php利用SoapClient调用webservices 1.开启soap支持,在php.ini中去除extension=php_soap.dll之前的':' 2.掉用页面 <?php h ...

  5. SQL Server如何定位自定义标量函数被那个SQL调用次数最多浅析

    前阵子遇到一个很是棘手的问题,监控系统DPA发现某个自定义标量函数被调用的次数非常高,高到一个离谱的程度.然后在Troubleshooting这个问题的时候,确实遇到了一些问题让我很是纠结,下文是解决 ...

  6. c#调用webservices

    有两种方式,静态调用(添加web服务的暂且这样定义)和动态调用: 静态调用: 使用添加web服务的方式支持各种参数,由于vs2010会自动转换,会生成一个特定的Reference.cs类文件   动态 ...

  7. EF Core使用SQL调用返回其他类型的查询 ASP.NET Core 2.0 使用NLog实现日志记录 CSS 3D transforms cSharp:use Activator.CreateInstance with an Interface? SqlHelper DBHelper C# Thread.Abort方法真的让线程停止了吗? 注意!你的Thread.Abort方法真

    EF Core使用SQL调用返回其他类型的查询   假设你想要 SQL 本身编写,而不使用 LINQ. 需要运行 SQL 查询中返回实体对象之外的内容. 在 EF Core 中,执行该操作的另一种方法 ...

  8. 关于C#调用WebServices的方法

    2018-1-22 前情是我使用vs在引用高通的webservice时出现了下载错误导致无法引用这个服务,先是在网上查询了这个错误的问题及解决方案,将这个问题与解决方法发给了高通同事,可惜的是他也不清 ...

  9. (在数据库中调用webservices。)SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问

    --开启 Ole Automation Procedures sp_configure 'show advanced options', 1; GO RECONFIGURE; GO sp_config ...

随机推荐

  1. Tarjan 割点割边【模板】

    #include <algorithm> #include <cstring> #include <cstdio> using namespace std; +); ...

  2. [Angular + TsLint] Disable directive selector tslint error

    @Directive({ // tslint:disable-next-line:directive-selector selector: '[scrollable]' })

  3. mysql-组合查询

    一.组合查询 mysql允许执行多个查询(多条select语句),并将结果作为单个查询结果集返回.这些组合查询通常称为并(union)或复合查询(compound query). 有两种情况需要使用组 ...

  4. ASIHTTPRequest 框架的导入

    刚接触ios 对一切都不熟悉  记录一下ASIHTTPRequest 框架的导入 步骤 以便日后再用 1.首先下载ASIHTTPRequest:点击下载 2.在project中导入下面文件: 导入方式 ...

  5. 一起talk C栗子吧(第九十五回:C语言实例--使用共享内存进行进程间通信一)

    各位看官们,大家好,上一回中咱们说的是SystemV IPC结构概述的样例,这一回咱们说的样例是:使用共享内存进行进程间通信. 闲话休提.言归正转.让我们一起talk C栗子吧! 共享内存是Syste ...

  6. ssh跳板登陆太麻烦,使用expect每次自动登录 利用expect 模拟键盘动作,在闲置时间之内模拟地给个键盘响应

    #!/usr/bin/expect -f #设置超时时间 set timeout #这里设置了跳板机的密码 set password "你的跳板机密码" #连接跳板机 spawn ...

  7. Classes and functions

    As another example of a user-defined type, we’ll define a class called Time that records the time of ...

  8. spinlock参考资料

    spinlock:http://irl.cs.ucla.edu/~yingdi/web/paperreading/smp_locking.pdf

  9. HDU-2045 不容易系列之(3)—— LELE的RPG难题 找规律&递推

    题目链接:https://cn.vjudge.net/problem/HDU-2045 找规律 代码 #include <cstdio> long long num[51][2]; int ...

  10. Incermental GC

    目录 增量式垃圾回收 什么是增量式垃圾回收 三色标记算法 GC 标记清除算法的分割 根查找阶段 标记阶段 写入屏障 清除阶段 分配 优点和缺点 缩短最大暂停时间 降低了吞吐量 Steele 的算法 m ...