Não é possível renomear uma coluna que é "replicada", provavelmente devido ao CDC
-
22-09-2019 - |
Pergunta
Eu quero executar a seguinte renomear
EXECUTE sp_rename N'dbo.Semesters.IsPublic', N'Tmp_ShowNCs', 'COLUMN'
Eu recebo o erro
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.
Eu ativei o Altery Data Capture (CDC) para esta tabela. Provavelmente é por isso que esta coluna é "replicada". SSMS mostra replicado = sim.
Então, eu quero saber se isso é normal ou um bug. Eu quero manter o CDC, mas renomeie esta coluna. Tenho outras opções além de excluir informações existentes no CDC e reenabilizar o CDC?
Solução
você fez em ordem errada. Você precisa desligar o CDC na tabela (o CDC no banco de dados está ligado) e, em seguida, altere a coluna e ligue o CDC na tabela. Para desfazer o seu problema, você precisa ativar o CDC no banco de dados, depois na mesa, desligue o CDC na tabela, renomeie a coluna, ligue o CDC na tabela.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow