我看过类似的帖子,但没有一个答案对我有帮助......我有这张表:
CREATE TABLE IF NOT EXISTS `user_likes_name` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_user` int(11) NOT NULL,
`id_name` int(11) NOT NULL,
`like` enum('yes','no','ask_later') NOT NULL,
`date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`provenance` enum('elimination','selection','suggestion') NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `avis_user` (`id_user`,`id_name`),
KEY `id_user` (`id_user`,`id_name`)
)
我使用此查询:
INSERT INTO user_likes_name (id_user, id_name, `like`)
VALUES (?, ?, 'ask_later')
ON DUPLICATE KEY UPDATE `date` = current_timestamp
哪个在phpmyadmin上运行正常。
但是当我在我的代码中使用它(使用PDO)时,我收到此错误消息:
致命错误:未捕获的异常' PDOException'与消息 ' SQLSTATE [23000]:完整性约束违规:1062 Duplicata du 冠军' 99-869' pour la clef' avis_user''在第95行的C:\ fakepath.php
我的PHP代码是:
$req = $bdd->prepare("
INSERT INTO user_likes_name (id_user, id_name, `like`)
VALUES (?, ?, 'ask_later')
ON DUPLICATE KEY UPDATE `date` = current_timestamp");
$req->execute(array($foo, $bar));
我觉得我要去kwayzey。我呢?
答案 0 :(得分:0)
两个小时的工作之后,我意识到我实际上并没有在正确的文件上工作。我现在感觉厌倦的方式很难夸大。