我想运行下面的重命名不能重命名为“复制”一列,可能是由于CDC
EXECUTE sp_rename N'dbo.Semesters.IsPublic', N'Tmp_ShowNCs', 'COLUMN'
我得到的错误
Msg 4928, Level 16, State 1, Procedure sp_rename, Line 547
Cannot alter column 'IsPublic' because it is 'REPLICATED'.
Msg 0, Level 20, State 0, Line 0
A severe error occurred on the current command. The results, if any, should be discarded.
我已经启用变更数据捕获(CDC )为这张桌子。可能这就是为什么这个专栏“被复制”。 SSMS显示replicated = yes。
所以我想知道这是正常还是错误。我想保留CDC但重命名此列。除删除现有的CDC信息和重新启用CDC之外,我还有其他选择吗?
CDC仅用于跟踪DDL更改 - 它不会阻止它们。您正在尝试更改标记为复制的表中的列。检查复制监视器以获取更多信息:http://msdn.microsoft.com/en-us/library/ms151780.aspx – 2010-02-21 19:05:12
我怀疑CDC是问题所在,因为它似乎在复制基础结构上实现。 – usr 2010-02-21 19:07:40
只是一个澄清...... CDC追踪DML的变化,而不是像OMG Ponies所说的那样改变DDL。 – 2011-03-23 08:36:03