症状
当您在 Microsoft SQL Server 2014 或2016实例中运行 DBCC CLONEDATABASE 命令时,DBCC CLONEDATABASE 命令可能会失败。 此外,如果数据库具有最初在 SQL Server 2000 中创建的对象,则会收到以下错误消息:
"DB_Name" 的数据库克隆已开始将目标用作 "Clone_DB_Name"。 消息2601,级别14,状态1, LineNumber 无法在具有唯一索引 "clst" 的对象 "sysschobjs" 中插入重复键行。 重复项值为 key_value。
原因
出现此问题的原因是目标中的默认 service broker 对象与源中的用户对象之间的键冲突。
解决方案
在 SQL Server 的以下累积更新中修复了此问题:
SQL Server 2014 Service Pack 2 的累积更新5
注意 此修补程序会根据需要检查冲突并丢弃 service broker 对象,以避免此问题。
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语 。