Faça novas tentativas com cuidado
Um tempo limite pode deixar dúvidas sobre a confirmação da gravação. Repetir um INSERT não idempotente pode criar uma duplicata mesmo que a primeira solicitação tenha sido concluída. Prefira uma restrição única ou upsert se o modelo permitir.
Para mudanças relacionadas em várias etapas, use uma transação se a operação suportar, para confirmar ou reverter tudo em conjunto. Mantenha as instruções específicas e vincule valores em vez de montar SQL com texto não confiável.
Confirme o resultado armazenado
Antes de tentar novamente após erro de conexão ou workflow, consulte um identificador estável e examine a linha atual. Um tempo limite não prova que nada foi gravado; diferencie falha de resultado incerto.
Registre a chave da operação e os dados de alteração no histórico quando apropriado. Para efeitos externos associados à gravação, use uma fila de saída ou uma transição de estado explícita para não repetir notificações ou pagamentos silenciosamente.