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

É mais rápido ATUALIZAR uma linha ou DELETAR e INSERIR uma nova?


Você não deveria estar fazendo essa pergunta. Você está perguntando "É melhor fazer do jeito certo, ou do jeito errado, em nome de alguma ideia nebulosa de 'mais rápido'?"

Você tem um aplicativo que é de alguma forma muito lento? Você por algum motivo acha que o problema é porque suas ATUALIZAÇÕES estão demorando muito? Você fez alguma medição e benchmarking do desempenho de suas interações com o banco de dados?

O que você está fazendo é uma otimização prematura do pior tipo, e você está fazendo um desserviço ao seu aplicativo ao fazê-lo. Você está fazendo suposições loucas sobre como acelerar seu código, sem absolutamente nada em que se basear.

Escreva seu código certo. Em seguida, tente descobrir onde você tem um problema de desempenho. Você ainda tem um problema de desempenho, ou está fazendo essa pergunta simplesmente porque acha que é algo que deveria perguntar? Você não deveria.

Mesmo que você tenha especificamente um problema com suas UPDATEs sendo muito lentas, não podemos responder à pergunta "X é mais rápido que Y" porque você não nos forneceu informações suficientes, como:
  • Qual ​​banco de dados você está usando
  • Os layouts de tabela
  • Quais índices estão no banco de dados
  • Como você está interagindo com o banco de dados

Por favor, escreva seu código corretamente e depois volte com detalhes sobre o que é muito lento, em vez de adivinhar micro-otimizações.