26 de agosto de 2026 · 4 min de leitura
Mensagem completa: "Violation of PRIMARY KEY constraint 'PK_Tabela'. Cannot insert duplicate key in object 'dbo.Tabela'. The duplicate key value is (123)." — Msg 2627, Level 14. A mesma mensagem aparece para constraint UNIQUE, só troca "PRIMARY KEY" por "UNIQUE KEY" no texto.
A constraint fez exatamente o que deveria: impediu um dado duplicado de entrar. O erro é um sintoma — a causa está em quem gerou o valor duplicado, não no banco.
O valor duplicado já vem na própria mensagem de erro ("the duplicate key value is...") — comece consultando esse valor específico na tabela pra ver se já existe uma linha idêntica ou se são duas gerações concorrentes tentando o mesmo ID. Se for race condition, a correção é usar MERGE/UPSERT com tratamento do erro 2627, ou uma constraint + retry, em vez de checar existência antes de inserir.
Artigos relacionados
7 dias grátis para aplicar tudo que você aprendeu aqui no seu próprio ambiente.
Começar gratuitamente