如果名称已经存在,我的脚本需要更新表格。但它没有这样做。
这是我正在使用的代码
$sth = $db->prepare(
'INSERT INTO track (rsname, overallranknow, overalllevelnow, overallxpnow)
VALUES (:name, :Overalln, :Overall1, :Overall2)
ON DUPLICATE KEY UPDATE
rsname = values(rsname),
overallranknow = values(overallranknow),
overalllevelnow = values(overalllevelnow),
overallxpnow = values(overallxpnow)'
);
$sth->bindValue(':name', $name, PDO::PARAM_STR);
$sth->bindValue(':Overalln', $Overalln, PDO::PARAM_INT);
$sth->bindValue(':Overall1', $Overall[1], PDO::PARAM_INT);
$sth->bindValue(':Overall2', $Overall[2], PDO::PARAM_INT);
$sth->execute();
只有在名称已经存在时才会更新。我不知道关于PDO的变化,所以这就是为什么我要求它如此变异。
~Kev(坏英语=抱歉)
答案 0 :(得分:2)
有人教你这个问题,并没有告诉你需要一个唯一的密钥才能使用它。