Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssis 我是否可以在SQL Server中的作业级别使用事务来反转包用于测试目的的功能?_Ssis_Sql Server 2016 - Fatal编程技术网

Ssis 我是否可以在SQL Server中的作业级别使用事务来反转包用于测试目的的功能?

Ssis 我是否可以在SQL Server中的作业级别使用事务来反转包用于测试目的的功能?,ssis,sql-server-2016,Ssis,Sql Server 2016,我知道当包失败时回滚是一件事,但在这种情况下,我希望包即使成功也能回滚。因此,我们可以在测试环境中自由地运行包,而不会太多地破坏数据库本身 我希望你能在工作层面上做到这一点,比如 步骤1:T-SQL脚本(“开始事务;”) 步骤2:运行包 步骤3:T-SQL脚本(“回滚事务;”) (可能会添加更多的包和额外的步骤来输出内容,并确保所有步骤在回滚之前都正常工作) 这在SQL Server 2016上有效吗?或者,您不能以这种方式在作业调度级别嵌套事务 我看到的另一个选择是在一个T-SQL脚本中完

我知道当包失败时回滚是一件事,但在这种情况下,我希望包即使成功也能回滚。因此,我们可以在测试环境中自由地运行包,而不会太多地破坏数据库本身

我希望你能在工作层面上做到这一点,比如

  • 步骤1:T-SQL脚本(“开始事务;”)
  • 步骤2:运行包
  • 步骤3:T-SQL脚本(“回滚事务;”)
(可能会添加更多的包和额外的步骤来输出内容,并确保所有步骤在回滚之前都正常工作)

这在SQL Server 2016上有效吗?或者,您不能以这种方式在作业调度级别嵌套事务


我看到的另一个选择是在一个T-SQL脚本中完成这一切,因为您可以在一个脚本中调用包。至少我希望找到一些不需要我们在包级别放入事务块,然后在我们将其移动到dev时取出的东西。

不,你不能在这样的事务中包装整个SSIS包。它在内部使用不同的连接,这些连接不构成作业步骤连接的一部分。我建议您改用备份/恢复。显式备份/恢复或时间点恢复Bugger。好吧,我想我必须弄清楚备份/恢复需要多少时间和空间。如果你使用完全恢复模式,你不需要进行显式备份/恢复。您可以恢复到某个时间点。