当 MySQL 报错唯一键约束重复记录时,可以采取以下几种解决方法:
1. 查找重复记录:使用 SELECT 语句查询出重复记录的具体信息,了解重复记录的字段值和所在的表。
```sql
SELECT * FROM 表名 WHERE 字段名 = '重复的字段值';
```
2. 删除重复记录:可以使用 DELETE 语句删除重复的记录。
```sql
DELETE FROM 表名 WHERE 字段名 = '重复的字段值';
```
3. 修改重复记录的字段值:使用 UPDATE 语句将重复记录的字段值修改为不重复的值。
```sql
UPDATE 表名 SET 字段名 = '新的字段值' WHERE 字段名 = '重复的字段值';
```
4. 删除唯一键约束:可以使用 ALTER TABLE 语句删除唯一键约束,然后再插入数据。
```sql
ALTER TABLE 表名 DROP INDEX 索引名;
```
5. 使用 INSERT IGNORE 语句:使用 INSERT IGNORE 语句可以忽略重复记录的插入,不会报错。
```sql
INSERT IGNORE INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);
```
6. 使用 REPLACE INTO 语句:使用 REPLACE INTO 语句可以将重复记录替换为新的记录,如果不存在则插入新记录。
```sql
REPLACE INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);
```
以上是一些常见的解决方法,具体的解决方法根据具体情况而定。在解决问题之前,可以先确定重复记录的原因,以便选择合适的解决方法。