Sql 在SSIS中使用web服务

Sql 在SSIS中使用web服务,sql,web-services,ssis,Sql,Web Services,Ssis,在我的项目中,我只是创建了一个web服务,用于添加数字,并通过SSIS从web服务任务返回变量结果,如下屏幕所示 当我使用文件连接模式时,我会将xml文件以以下格式保存在硬盘上: <?xml version="1.0" encoding="utf-16"?> 三十五 我尝试通过文件连接或变量在数据库表中插入35的结果 我已经创建了执行SQL任务来按过程执行查询,请按照链接 我还尝试通过访问变量来运行executesql任务,如下链接 [ 现在,在所有这些试验之后,我关心的是

在我的项目中,我只是创建了一个web服务,用于添加数字,并通过SSIS从web服务任务返回变量结果,如下屏幕所示

当我使用文件连接模式时,我会将xml文件以以下格式保存在硬盘上:

<?xml version="1.0" encoding="utf-16"?>

三十五

我尝试通过文件连接或变量在数据库表中插入35的结果

  • 我已经创建了执行SQL任务来按过程执行查询,请按照链接

  • 我还尝试通过访问变量来运行executesql任务,如下链接 [

  • 现在,在所有这些试验之后,我关心的是,我是否能够成功地将结果存储在web服务的用户变量中,如第一个屏幕截图所示,因为我得到的变量值为空,如链接2中所示

    但当我在硬盘上存储数据时,它成功地将结果存储为xml格式,如果我不正确,请提供正确的过程或帮助链接

    我的主要座右铭是运行一个web服务,将两个数字相加,并通过SSIS通过web服务任务在用户定义的变量中获得结果,然后将获取的数据插入sql数据库

    还有,这个双绿色箭头在我下面的web服务任务屏幕截图中的意思

    现在,在所有这些试验之后,我关心的是,我是否能够成功地将结果存储在web服务的用户变量中,如第一个屏幕截图所示,因为我得到的变量值为空,如链接2中所示

    只有在运行时(当包运行时)才会填充变量。在设计时(当您按下“求值”按钮时)不会填充变量,除非您在其中键入手动内容

    第二个绿色箭头只是另一个数据流。如果XML任务有多个输出,您可以使用第二个箭头将其连接到其他内容。它只是一个句柄,供您抓取

    这远远超出了您最初问题的范围,但鉴于您已表示要将整个XML文件历史记录保存到数据库中,您需要首先关注这一点。从您的另一个问题来看,您已经做到了这一点,现在您需要使用SQL函数将其切掉。您是否可以验证您是否已管理要将XML文件保存到数据库中(以XML数据类型)

    如果是这样的话,请结束这个问题,集中精力将其从数据库中分解出来。下面是一个使用XML数据类型示例的链接。您需要了解如何使用此链接中提到的方法提取数据类型


    这里是一个使用XML数据的示例。

    @ElectricLlama。.我的意思是说在运行时变量是否正在填充,但我的代码最终在我将常量值放入查询时执行,该时间值被插入到数据库中,因此我操纵了列的数据类型,以获取XML内容和XML文件的全部内容e正在进入数据库,现在我假设只取任何数值的添加结果,我尝试了web服务任务和执行sql任务之间的xml任务,但事情发生在xml任务中,我无法通过包含web服务任务返回的整个xml字符串的变量进行处理在您的示例中,简单的解决方案是使用字符串函数删除
    部分,只留下数字。然后您可以将其转换为整数并进一步使用它。正确的解决方案是使用XPath分解XML,但这在SSIS内部很棘手。这是为了了解SSIS还是存在真正的业务问题?@ElectricLlama..这是一个真正的总线为了解决这个问题,我必须使用一些web服务,并根据web服务返回的结果更新表,因此上面提到的问题是我创建的简单web服务,用于添加数字,我正在尝试将收到的结果插入数据库,我已通过执行SQL任务成功地更新了表,但问题是我无法只插入数值,整个xml sting都被插入到我的表中。这就是您的xml始终的样子吗?因为简单的解决方案是删除您不喜欢的字符串位。但是如果您想正确使用xml,我提供的所有解决方案都涉及将xml插入到数据中base然后使用数据库XML函数分解出您需要的内容。@electrillama…您可以通过提供说明或帮助事项或链接来指导我使用数据库XML函数分解它,以便再次在数据库中获取所需的值吗。