Php 使用pdo将MYSQL插入到重复密钥更新中
(我只是尝试学习复制键语法) 我编写了一个查询,该查询应该将值插入表中,但如果存在条目,则应该进行更新Php 使用pdo将MYSQL插入到重复密钥更新中,php,mysql,pdo,Php,Mysql,Pdo,(我只是尝试学习复制键语法) 我编写了一个查询,该查询应该将值插入表中,但如果存在条目,则应该进行更新 $reflinkUpdate = $dbh->prepare('INSERT INTO links (link_first_id, link_linked_id) VALUES (:sid, :tid) ON DUPLICATE KEY UPDATE link_first_id= :sid2, link_linked_id = :tid2'); $reflinkUpdate->bi
$reflinkUpdate = $dbh->prepare('INSERT INTO links (link_first_id, link_linked_id) VALUES (:sid, :tid) ON DUPLICATE KEY UPDATE link_first_id= :sid2, link_linked_id = :tid2');
$reflinkUpdate->bindParam(":sid", $_POST['solo'], PDO::PARAM_INT);
$reflinkUpdate->bindParam(":tid", $_POST['reflink'], PDO::PARAM_INT);
$reflinkUpdate->bindParam(":sid2", $_POST['solo'], PDO::PARAM_INT);
$reflinkUpdate->bindParam(":tid2", $_POST['sel'], PDO::PARAM_INT);
我的代码每次插入entrys并且不更新。我做错了什么?试着这样做:
$reflinkUpdate = $dbh->prepare('
INSERT INTO links (link_first_id, link_linked_id)
VALUES (:sid, :tid)
ON DUPLICATE KEY
UPDATE
link_first_id = VALUES(link_first_id),
link_linked_id = VALUES(link_linked_id)
');
值(字段名称)
指的是试图插入的值。插入的字段是否具有唯一索引(或是表的主键)?他仍然插入一个entry@user3676560只有当重复条目是主键或唯一索引时,它才起作用。