phpMyAdmin:MySQL错误1062 – 重复输入

我将用户“root”连接到我的数据库“test”,我在本地托管以进行开发.其中我有“ratingcomment”表.出于某种原因,当我点击“ratingcomment”表时,phpMyAdmin向我显示以下错误:

Fehler

    SQL-Befehl: 

    INSERT INTO  `phpmyadmin`.`pma_history` (

    `username` ,
     `db` ,
     `table` ,
     `timevalue` ,
     `sqlquery`
    )
    VALUES (
    'root',  'test',  'ratingcomment', NOW( ) ,  'SELECT * FROM `ratingcomment`'
    )
    MySQL meldet: 

    #1062 - Duplicate entry '838' for key 'PRIMARY'

我使用谷歌找出以下内容

"This indicates that you have a UNIQUE or PRIMARY index on a table, and there is a duplicate value someone on one of the values in one of these indexes."

但我还是不太明白这个错误!我使用主键,它为我的所有表自动递增,所以实际上表不存在问题.我有另一个名为“rating”的表,其中有一个“评论”列.这可能会导致问题吗?

解决方法:

快速解决:

REPAIR TABLE `phpmyadmin`.`pma_history`

如果失败,我只是截断/清空表.

TRUNCATE TABLE `phpmyadmin`.`pma_history`

尽管phpmyadmin在我的工具箱中占有一席之地,但我个人并不使用它的内部数据库.

附录

MyISAM表很容易被破坏.一对夫妇经常打我:如果MySQL没有正确关闭,或者表有一个FULLTEXT索引并且磁盘上的停用词文件已经改变.

简单地说,REPAIR只检查数据文件中的错误(并根据您的选项,使其再次可用)并重写索引文件.公平警告:使用MyISAM,修复表通常可以覆盖该表中的所有数据以使其可用.有关详细信息,请参见doc.

关于此pma表被破坏的谷歌搜索引导我到this.

上一篇:javascript – 删除数组中的重复对象,保留具有最大属性值的对象


下一篇:javascript – 根据多个数组输入过滤数组