Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

O SQL Server limpou minha tabela após (incorretamente) criar uma nova coluna .. o que diabos aconteceu?


Uma UPDATE A instrução não pode excluir linhas, a menos que haja um gatilho que execute a exclusão posteriormente e você diga que a tabela não possui gatilhos.

Portanto, tinha que ser o cenário que apresentei para você no meu comentário:As linhas não foram carregadas corretamente na nova tabela e a tabela antiga foi descartada.

Note que é até possível que ele tenha olhado certo para você, onde as linhas foram carregadas em um ponto - se a transação não foi confirmada, e então (por exemplo) mais tarde, quando sua sessão foi encerrada, a transação foi automaticamente revertida. A transação também poderia ter sido revertida por outros motivos.

Além disso, posso ter entendido a ordem incorreta:ela pode criar a nova tabela com um novo nome, carregar as linhas, descartar a tabela antiga e renomear a nova. Nesse caso, você pode estar consultando a tabela errada para descobrir se os dados foram carregados. Não consigo me lembrar de cabeça agora de que maneira o designer de tabelas estrutura seus scripts - há mais de uma maneira de esfolar esse gato.