MSSQL 2016包执行失败| SSIS错误:索引超出范围

时间:2018-02-01 12:07:54

标签: sql-server ssis etl sql-server-2016 copy-database-wizard

我使用SMO使用复制数据库向导进行了复制作业(在线保留DB)。将DB复制到同一SQL实例。这失败了

  

包执行失败。步骤失败了。

如果我执行它创建的SSIS包,则会发生以下情况:

  

事件名称:OnError消息:索引超出范围。一定是   非负面且小于集合的大小。参数名称:   index StackTrace:在System.Collections.BitArray.Set(Int32索引,   布尔值)at   Microsoft.SqlServer.Management.Smo.PermissionWorker.GetPermissionSetBase(PermissionEnumKind   kind,Int32 i)at   Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetPermissionsFromCache(PermissionEnumKind   亲切的   Microsoft.SqlServer.Management.Smo.SqlSmoObject.AddScriptPermissions(StringCollection   sc,PermissionEnumKind kind,ScriptingPreferences sp)at   Microsoft.SqlServer.Management.Smo.Database.AddScriptPermission(StringCollection   查询,ScriptingPreferences sp)at   Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptCreateSpecialUrn(金塔   urn,ScriptingPreferences sp,ObjectScriptingType& scriptType)at   Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptCreate(Urn urn,   ScriptingPreferences sp,ObjectScriptingType& scriptType)at   Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptCreateObjects(IEnumerable的1 urns) at Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptUrns(List 1   orderedUrns)at   Microsoft.SqlServer.Management.Smo.ScriptMaker.DiscoverOrderScript(IEnumerable的1 urns) at Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptWorker(List 1   urns,ISmoS​​criptWriter writer)   Microsoft.SqlServer.Management.Smo.ScriptMaker.Script(UrnCollection   列表,ISmoS​​criptWriter编写者)   Microsoft.SqlServer.Management.Smo.DataTransferBase.GetScriptLoadedTransferWriter()   在Microsoft.SqlServer.Management.Smo.Transfer.TransferData()at   Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer()

我也试过从SQLCMD开始这项工作。结果相同。 我也尝试过Detach / Attach方法。然而,这很好,这不是一个理想的选择,因为它使数据库离开传输的持续时间。

我在服务器(Windows)和实例上拥有管理员权限。 在SSMS外部执行包(使用包执行实用程序的.dtsx文件)会产生相同的错误。 我创建了一个空数据库,其中只有一个表。发生同样的错误。

请帮助..

操作系统:Windows Server 2012 MSSQL:2016 SP1

1 个答案:

答案 0 :(得分:0)

这已经通过应用2018年1月的CU来解决,即使此修订没有记录在那里。