DBAtlas · 数据库运维图谱

2627: Violation of PRIMARY KEY / UNIQUE KEY constraint. Cannot insert duplicate key in object(违反 PRIMARY KEY / UNIQUE KEY 约束。不能在对象中插入重复键)

SQL Server

含义

你尝试插入或更新的值在受 PRIMARY KEY 或 UNIQUE 约束保护的列中已经存在。不接受重复键。

原因

第二次插入相同的唯一值、UPDATE 与已有值冲突、缺少唯一性检查,或两个并发请求生成了相同的行。

解决方法

插入前检查行是否已存在,或使用 MERGE / IF NOT EXISTS。对于幂等插入,采用 "INSERT ... WHERE NOT EXISTS" 模式。捕获错误并返回有意义的消息。如果确实需要重复数据,重新审视该约束。生成键时使用 IDENTITY 或 SEQUENCE 以避免冲突。

在 DBAtlas 中打开 →

同一数据库的其他条目