在Facebook应用中,他有以下数据库列:
id (auto_increment)
facebook_id (VARCHAR)
email (VARCHAR)
like_name (VARCHAR)
like_id (VARCHAR)
如果我们想为同一个facebook_id允许多个条目,但不允许每个facebook_id的like_id重复,那么查询是什么?我们希望允许多个facebook_id具有相同的like_id。我们需要设置任何索引吗?我们尝试进行DUPLICATE KEY更新,但它不起作用。
$likessql = $conn->prepare('INSERT IGNORE likes (facebook_id,email,like_name,like_id) VALUES(:facebook_id,:email,:like_name,:like_id) ON DUPLICATE KEY UPDATE like_id = :like_id');
foreach ($likes as $like) {
$likessql->execute(array(
':facebook_id' => $facebookid,
':email' => $email,
':like_name' => $like['name'],
':like_id' => $like['id']
));
答案 0 :(得分:0)
我通过将两个主索引设置为PRIMARY Seq_in_index = 1,Column_name = facebook_id来实现它。第二个索引是PRIMARY Seq_in_index = 2,Column_name = like_id。基本上我必须将主键设置为两个项目。
答案 1 :(得分:0)