【问题标题】:Some of the tasks in the SSIS package failed when I migrated the package to another server当我将包迁移到另一台服务器时,SSIS 包中的某些任务失败
【发布时间】:2012-06-22 03:04:20
【问题描述】:

抱歉,我是 SSIS 开发的新手。我给这个问题的标题不太合适 - 请看下面。

我在本地服务器的 C 驱动器中有一个 SSIS 包,团队中的每个人都可以访问它。如果我使用我的 windows 用户名和密码登录,我可以执行 SSIS 包中的“执行 SQL 任务”,并且它成功完成。该包包含3个“执行sql任务”,所有这些都运行正常。

当我的队友尝试使用他的用户名和密码执行包时 它显示一个错误,在 3 个“执行 SQL 任务”中,只有 1 个成功执行,另外 2 个错误如下:

执行 SQL 任务] 错误:执行查询“EXEC usp_ETL_GetRepairHistoryFacts”失败,出现以下错误:“The 语句已终止。”。可能的失败原因:问题 使用查询,“ResultSet”属性设置不正确,参数不正确 设置正确,或未正确建立连接。

我们无法理解的是,我们使用的是相同的 SSIS 包,相同的数据库,唯一的区别是登录名。

有人对如何解决这个问题有任何想法吗?

【问题讨论】:

  • 在执行sql任务中你访问不同的存储过程吗?验证用户是否可以访问执行sql任务中使用的所有存储过程

标签: sql-server ssis


【解决方案1】:

您的 SQL Server 是否使用经过身份验证的 Windows 登录?听起来是这样的。

如果是这样,我会让你的队友登录到 SSMS(SQL Server Management Studio),启动一个新查询并运行“EXEC usp...”语句。

您可能会看到一条错误消息。我的猜测是存储过程“usp_ETL ...”的权限问题听起来你有执行权限而他/她没有。

【讨论】:

  • 感谢您的回复,您的意思是像 Grant exec on usp_ETL_GetRepairHistorFacts to user2
  • 顺便问一下,用户和登录之间到底有什么区别?
  • 当我们在 sql server 属性上将默认语言从英国 englsih 更改为英语时。我的意思是服务器属性-->常规-->语言
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-21
  • 2016-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-24
相关资源
最近更新 更多