【问题标题】:SSIS Package won't do anything when Run through SQL Server Job通过 SQL Server 作业运行时,SSIS 包不会执行任何操作
【发布时间】:2012-04-10 11:36:38
【问题描述】:

我有一个简单的 SSIS 包,它有 控制流上的一个执行 SQL 任务控件,它从数据库中获取一些值

在数据流中,我正在使用一个脚本组件,它基于“执行 SQL 任务”给出的值,执行以下操作:

public override void CreateNewOutputRows()
    {

        try
        {

            string loginURL = "http://maps.googleapis.com/maps/api/geocode/xml?address=" + Variables.ProjectAddress + "&sensor=true";
            WebClient client = new WebClient();

            string downloadString = client.DownloadString(loginURL);
            XmlDocument xml = new XmlDocument();
            xml.LoadXml(downloadString);

    ///// setting output buffer variables
         }
       catch(Exception ex)
       {

       }
}

所以基本上我在请求包内的纬度和经度的网络服务。 然后将检索到的值更新到数据库中:

当我从 Visual Studio SSIS 项目控制台运行包时,一切正常。 但是当我尝试通过 SQL Server 2008 R2 Job 运行包时,什么也没有发生。作业执行成功,但没有更新(或插入)行。

我尝试将包导入 SQL MSDB 并按照给定的here 将保护级别一一设置为下拉列表中的所有项目 ...然后从 SQL Job 运行这个导入的包。还是……什么都没发生。

有谁知道怎么回事??我如何处理以下事实:

  1. 这与 sql 用户发出 Web 服务请求的权限有关。我该如何配置呢?

2.与导入的ssis包的配置文件有关。我应该寻找什么?

请帮帮我: 我希望我已经提供了调查问题所需的所有信息

【问题讨论】:

    标签: sql-server-2008 ssis sql-job


    【解决方案1】:

    作业是否在您计算机上的 SQL Server 实例上?我问是因为这可能是从 SQL Server 到您拥有 Web 服务的计算机的防火墙或权限问题。

    我还建议删除该 try catch 并启用包配置,以便查看它是否引发错误

    关于保护级别,如果您使用 EncryptSensitiveWithUserKey 包不会加载数据库敏感信息(登录名和密码),除非它在您开发的计算机上。同样的事情也适用于 EncryptAllWithUserKey 但在这种情况下它甚至不会打开包

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-21
      • 1970-01-01
      • 1970-01-01
      • 2019-02-18
      • 1970-01-01
      • 1970-01-01
      • 2019-07-14
      相关资源
      最近更新 更多