我有一个表SQL,我从Excel文件中填充它。问题是许多领域都在重复。例如:
FOURNITURE MFC SERIE
FOURNITURE MFC SERIE
FOURNITURE MFC SERIE
在我的表中,我发现只有一行。它会跳起来。但是,我需要获得所有的支持。
我的要求是:
if ($articleid == 'DIEPRESTATION' || $articleid == 'DIEDIVBIEN' ||$articleid =='DIEDIVERS')
{
if(!($this->_db->query("INSERT INTO `article` (`ID_Article`, `Designiation`, `Ident`, `ID_LRU`) VALUES ('".$articleid."', '".$designation."', '".$ident."', '".$IdLRU."');")))
{
if ($LRU != 'new')
{
return $this->_db->query(" UPDATE `FLOOSE`.`article` SET `ID_LRU` =
'".$IdLRU."' WHERE `article`.`ID_Article` = '".$articleid."' AND
`article`.`Designiation` = '".$designation."' AND
`article`.`Ident` = '".$ident."' LIMIT 1 ;");
}
else {
return false;
}
} else{
return TRUE;
}
}
如何更改或测试以恢复所有线路?我删除了唯一键约束? 谢谢。
答案 0 :(得分:1)
是的,您的列确实有唯一约束。更重要的是,ID_Article
,Designiation
的合成是您的主键,根据定义也是唯一的。
你应该
ALTER TABLE article DROP PRIMARY KEY;
id
以遵守约定),并将其设置为具有自动增量的主键:ALTER TABLE article ADD id INT PRIMARY KEY AUTO_INCREMENT;