• sqlserver使用存储过程发送http请求


    本文主要向大家介绍了SQLServer数据库访问发送Http请求,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

    -- 通用读取获取数据存储过程

    --开启Sql Server 通讯配置--

    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

    /*

    参数说明?

    @URL=http请求地址

    @status=状态代?

    @returnText=返回?

    @object=对象令牌

    @errSrc=错误源编?

    */

    CREATE PROCEDURE P_GET_HttpRequestData(

    @URL varchar(500),

    @status int=0 OUT,

    @returnText varchar(2000)='' OUT

    )

    AS

    BEGIN

    DECLARE @object int,

    @errSrc int

    /*初始化对*/

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

    IF @status <> 0

    BEGIN

     EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

     RETURN

    END

    /*创建链接*/

    EXEC @status= SP_OAMethod @object,'open',NULL,'GET',@URL

    IF @status <> 0

    BEGIN

     EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

     RETURN

    END

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

    /*发起请求*/

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

    IF @status <> 0 

    BEGIN 

     EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

     RETURN

    END

         

    /*获取返回*/

    EXEC @status= SP_OAGetProperty @object,'responseText',@returnText OUT

    IF @status <> 0 

    BEGIN 

     EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

     RETURN

    END

    END;

    ----测试

    CREATE PROCEDURE IPCC_WEBSERVICE_PACKID(@parametersStr VARCHAR(255),@outText VARCHAR(255) OUT)

    AS

    BEGIN

      DECLARE @returnText VARCHAR(500)

      DECLARE @status int

      DECLARE @urlStr VARCHAR(255)

      SET @urlStr = 'http://172.17.5.14:9090/df/sendDataToIVR.action?parametersStr='+@parametersStr+'&ifaceType=4';

    EXEC P_GET_HttpRequestData    @urlStr, @status OUTPUT,@returnText   OUTPUT;

       SET @outText = @returnText;

       print @outText ; ---打印

    END;

  • 相关阅读:
    设计模式-抽象工厂模式
    装修预算-资料收集
    SQL中存储过程和函数的区别
    View
    数据表优化
    Entity Framework 基础
    html5标准
    JS整数验证
    vue 页面切换从右侧切入效果
    vue动态设置Iview的多个Input组件自动获取焦点
  • 原文地址:https://www.cnblogs.com/lgx5/p/9695052.html
Copyright © 2020-2023  润新知