タグをテーブルに挿入するinsert文があります。各タグには、一意のid
(参照用)、vid_id
(動画との一致用)、name
(例:タグ1)があります。フィールドのサブセットを照合して重複するエントリを防止します。
重複するエントリは、挿入されているものと同じで、vid_id
とname
という既存のエントリがあるとみなされます。
2/3フィールドに一致する重複エントリの挿入を停止するにはどうすればよいですか?
$sql="INSERT into tags (id,vid_id,name) VALUES (?,?,?)";
$stmt16 = $conn->prepare($sql);
$result=$stmt16->execute(array($id,$vid_id,$tag));
重複してもどちらの値も存在しないようにしますか?私は、両方の値が 'id:123、name:tag1'と一致する場合、2回は出現しないようにしたいだけです。 'id:123、name:tag2'が' id:123、name:tag1'と共存するかどうかは気にしません。 – Scarface
しかし、あなたはちょうど言ったことはありません "重複したエントリは、何かが挿入されているものと同じvid_idと名前を持つ既存のエントリを持つと見なされます" –
定義されている方法によって、独自の制約がニーズに合っています。たぶん、現在の値のテーブルを投稿すると、私たちはこの問題をもっとよく理解することができました... –