Ich habe eine sehr einfache Tabellenstruktur in der Datenbank:INSERT, wenn nicht vorhanden ELSE DELETE - Mit ON DUPLICATE KEY
ID (Unique), userid, groupid
mit einem einzigartigen Schlüssel auf Benutzer-ID und groupid - so man kann nicht zwei hat das gleiche. Zum Beispiel:
ID userid groupid
1 86 5
2 86 6
ist möglich, aber:
ID userid groupid
1 86 5
2 86 5
Isnt möglich.
Das alles funktioniert gut. Ich versuche, die Zeile einzufügen, und wenn dies aufgrund eines Duplikats fehlschlägt, lösche diese Zeile. Mein Code ist einfach:
$group_query = $database->prepare("INSERT INTO users_groups (userid,groupid) VALUES (?,?) ON DUPLICATE KEY DELETE FROM users_groups WHERE userid=? AND groupid=?");
$group_query->bind_param("iiii", $user_id, $group_id, $user_id, $group_id);
Ich sehe keinen Grund, warum das nicht funktionieren sollte. Alle Variablen sind auf Integer gesetzt. Sie sind alle tatsächliche Nummern (überprüft). Die Syntax sieht gut aus. Die einzige Schlussfolgerung, die ich habe, ist, dass es keine gültige Abfrage ist - aber ich bin mir nicht sicher, warum es keine gültige Abfrage ist.
Danke für alles!
noch nie von IODKD gehört. Sie geben nicht nur das Verb Ihrer Wahl ein. – Drew
Ich habe gerade eine Suche auf dieser Seite für IODKD durchgeführt und kam nur mit dem, was Sie geschrieben haben. Ich habe auch noch nie von IODKD gehört :) –
Ich habe auch noch nie von IODKEMCF gehört (Einfügen auf doppelten Schlüssel mailen Sie mir CSV-Datei) – Drew