#1062 - 更新时键'PRIMARY'的重复条目'0'

时间:2013-10-04 14:34:26

标签: mysqli

我一直在

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

每当我尝试更新数据库中的一个表时都会出现

错误。

它只是一个标准的简单查询

UPDATE ivrecord SET title = 'sometitle' WHERE ID ='125'

事情是,我根本不更新主键。

15个数据库中只有1个表。

查询实际上有效,进行更新,但无论如何都会抛出错误..我唯一可以编写代码的方法是尝试/捕获错误。

提前感谢。

编辑显示'show table'输出

    CREATE TABLE `ivrecord` (  `ID` int(10) NOT NULL AUTO_INCREMENT,  `courseID`
    varchar(30) COLLATE latin1_general_ci NOT NULL DEFAULT '0',  `unitID` char(3)
    COLLATE latin1_general_ci NOT NULL DEFAULT '0',  `assNo` int(3) NOT NULL DEFAULT 
    '0',  `title` varchar(255) COLLATE latin1_general_ci NOT NULL DEFAULT '',  
    `verifierID` int(3) NOT NULL DEFAULT '0',  `authorID` int(3) NOT NULL DEFAULT 
    '0',  `IVdate` varchar(50) COLLATE latin1_general_ci NOT NULL DEFAULT '',  `IVref` 
    varchar(30) COLLATE latin1_general_ci NOT NULL DEFAULT '',  `issueDate` char(15) 
    COLLATE latin1_general_ci DEFAULT '0',  `dueDate` char(15) COLLATE 
    latin1_general_ci DEFAULT '0',  `Q3` char(3) COLLATE latin1_general_ci DEFAULT 
    '0',  `Q4` char(3) COLLATE latin1_general_ci DEFAULT '0',  `Q5` char(3) COLLATE 
    latin1_general_ci DEFAULT '0',  `feedback` text COLLATE latin1_general_ci NOT 
    NULL,  `passes` varchar(150) COLLATE latin1_general_ci NOT NULL DEFAULT '',  
    `merits` varchar(150) COLLATE latin1_general_ci NOT NULL DEFAULT '',  `dists` 
    varchar(150) COLLATE latin1_general_ci NOT NULL DEFAULT '',  `version` int(3) NOT 
    NULL DEFAULT '1',  `url` varchar(200) COLLATE latin1_general_ci NOT NULL DEFAULT 
    '',  `void` tinyint(1) NOT NULL DEFAULT '0',  PRIMARY KEY (`ID`),  FULLTEXT KEY 
    `feedback` (`feedback`)) ENGINE=MyISAM AUTO_INCREMENT=895 DEFAULT CHARSET=latin1 
    COLLATE=latin1_general_ci

0 个答案:

没有答案