Problema:
Quando você usa DDL (linguagem de definição de dados) para modificar uma tabela e, em seguida, tentar salvar a tabela no Microsoft SQL Server 2008, você receberá a seguinte mensagem:
Não é permitido salvar as alterações. As alterações que você fez exigem as tabelas a seguir ser descartado e recriado. Você ter feito alterações em uma tabela que não pode ser recriada ou habilitado a opção impedir salvar as alterações que exigem a tabela para ser recriada.
Por que Acontece?
Esse problema ocorre quando a opção Impedir salvar as alterações que exigem a recriação da tabela está ativada e você fazer um ou mais dos seguintes alterações na tabela:
* Você alterar a configuração Permitir nulos para uma coluna.
* Você reordenar colunas na tabela.
* Você alterar o tipo de dados de coluna.
* Adicionar uma nova coluna.
Quando você altera uma tabela para que você alterar a estrutura de metadados da tabela e, em seguida, salvar a tabela, a tabela deve ser recriada com base nessas alterações. Isso pode resultar na perda de metadados e em uma perda de dados direta durante a recriação da tabela. Se você ativar a opção Impedir salvar as alterações que exigem a recriação da tabela na seção da janela Opções SSMS (SQL Server Management Studio) Designer , você receberá a mensagem de erro mencionada a cima.
Solução 1
Para contornar este problema, use instruções Transact-SQL para fazer as alterações à estrutura de metadados de uma tabela.
importante É altamente recomendável que você não solucionar esse problema desativando a opção Impedir salvar as alterações que exigem recriação da tabela .
Solução 2
Para alterar a opção Impedir salvar as alterações que exigem a recriação da tabela , siga estas etapas:
1. Abra o SQL Server Management Studio (SSMS).
2. No menu Ferramentas , clique em Opções .
3. No painel de navegação da janela Opções , clique em designers .
4. Selecione ou desmarque a caixa de seleção Impedir salvar as alterações que exigem a recriação da tabela e, em seguida, clique em OK .
Observação Se você desabilitar esta opção, você não será avisado quando você salva a tabela que as alterações que você fez alterou a estrutura de metadados da tabela. Nesse caso, perda de dados pode ocorrer quando você salva a tabela.
Risco de desativar a opção "Impedir salvar alterações que exigem recriação da tabela"
Embora desativar essa opção pode ajudar a evitar recriar uma tabela, ele também pode levar a alterações sendo perdidas. Por exemplo, suponha que você habilitar o recurso controle de alteração no SQL Server 2008 para controlar alterações para a tabela. Quando você executa uma operação que faz com que a tabela que ser recriado, você receber a mensagem de erro mencionada na seção "Sintomas". No entanto, se você desativar essa opção, a alteração existente informações de controle é excluída quando a tabela é recriada. Portanto, recomendamos que você não solucionar esse problema desativando a opção.
Para determinar se o recurso controle de alteração está ativado para uma tabela, execute essas etapas:
1. No SQL Server Management Studio, localize a tabela no Object Explorer .
2. Clique com o botão direito na tabela e, em seguida, clique em Propriedades .
3. Na caixa de diálogo Propriedades da tabela , clique em Controle de alteração .
Se o valor do item Alterar controle for True , essa opção é ativada para a tabela. Se o valor for False , essa opção é desativada.
Quando o recurso Alterar rastreamento está habilitado, use instruções Transact-SQL para alterar a estrutura de metadados da tabela.
Comentários recentes
7 semanas 12 horas atrás
43 semanas 13 horas atrás
43 semanas 13 horas atrás
43 semanas 16 horas atrás
43 semanas 16 horas atrás
43 semanas 16 horas atrás
43 semanas 16 horas atrás
43 semanas 16 horas atrás
43 semanas 16 horas atrás
43 semanas 16 horas atrás