ON DUPLICATE KEY MYSQL不起作用

时间:2017-10-24 18:30:40

标签: mysql

我已阅读了几十个帖子,但我不知道我无法理解它。我希望这个帖子不会重复。

所以,我试图插入数据,但最后如果数据已经在桌面上。如果不是,它会更新值,然后将数据插入表中。我读过我必须使用

  

INSERT INTO table()VALUES()ON DUPLICATE KEY data1 =' $ data1',data2 =' $ data2'

然后,这是我的代码

$sql = "INSERT INTO niche_new(gamename,domain,url,type,date) VALUES('$gamename','$websiteurl','$url','download','$waktu') ON DUPLICATE KEY UPDATE domain='$websiteurl',url='$url'";
$process = $conn->query($sql) or die("Error: ".$conn->error);
  

在查询结束时。

     

数据不会被更新,但会被插入。这让我的桌子有了   大量重复数据。

我真的很感激任何答案。谢谢:))

  

注意:这是一个很大的错误。我忘了在桌子上设置独特的钥匙。   想要使用ON DUPLICATE KEY的人,请确保设置UNIQUE KEY   通过选择哪个ROW作为您的参数。它现在有效。

2 个答案:

答案 0 :(得分:2)

如果插入重复数据,很可能,您插入的列中没有一列具有UNIQUEPRIMARY KEY修饰符。

答案 1 :(得分:0)

请指定KEY column,它应该有效