对一个已经存在很多数据的表设计添加主键的时候出现错误:
“AC_DATA_BRAKES”表
- 无法创建索引“PK_AC_DATA_BRAKES”。
ODBC 错误: [Microsoft][ODBC SQL Server Driver][SQL Server]CREATE UNIQUE INDEX 终止,因为发现了索引 ID 1 的重复键。最重要的主键为 'type 6c, len 9'。
[Microsoft][ODBC SQL Server Driver][SQL Server]未能创建约束。请参阅前面的错误信息。
[Microsoft][ODBC SQL Server Driver][SQL Server]语句已终止。
- 无法创建索引“PK_AC_DATA_BRAKES”。
ODBC 错误: [Microsoft][ODBC SQL Server Driver][SQL Server]CREATE UNIQUE INDEX 终止,因为发现了索引 ID 1 的重复键。最重要的主键为 'type 6c, len 9'。
[Microsoft][ODBC SQL Server Driver][SQL Server]未能创建约束。请参阅前面的错误信息。
[Microsoft][ODBC SQL Server Driver][SQL Server]语句已终止。
使用如下方法查询,
select * from AC_DATA_BRAKES t where exists(
select 1 from AC_DATA_BRAKES where TID=t.TID group by TID having count(1)>1
)
把重复的记录干掉,然后再添加主键。
select 1 from AC_DATA_BRAKES where TID=t.TID group by TID having count(1)>1
)
把重复的记录干掉,然后再添加主键。