Tabelle ohne Key Insert / Update Problem

merzi86

Erfahrenes Mitglied
Ich habe eine MySql-Tabelle, die keinen Schlüssel besitzt und sich auf zwei Verschiedene Tabellen bezieht.
In der dritten Spalte steht ein Wert, der sich ändern soll bzw. kann.

Von einer Anwendung soll ein Query ausgeführt werden, welcher den betreffenden Eintrag ändern und falls er noch nicht existiert den Eintrag hinzufügt.

Da die Tabelle allerdings kein Schlüssel besitzt, kann ich leider kein Replace und auch kein on duplikae key ausführen.
Ich habe bereits daran gedacht, dass ich im Programm vorher Abfrage, ob ein passender Eintrag schon vorhanden ist und dann den Insert- bzw. Update-Query abschicken.

Als 2. Variante habe ich auch schon an ein Trigger gedacht, der das gleiche macht. Dabei wäre der Vorteil die Operationen würden soweit gleich auf dem Datenbank-Server durchgeführt.

Ihr vielleicht noch eine Idee, wie ich das Problem Elegant lösen könnte?

Der Aufbau der Tabelle sieht wie folgt aus.
___________________________
| UserID | ModuleID | Permission |
-------------------------------------------
 
Ist die Kombination userid+moduleid nicht Unique?

Wenn doch, setzt ein Key drauf

Wenn nicht, warum nicht?
 
Manchmal kommt man nicht auf das einfachste.
Klar kann man bei auf Unique setzen und damit das Problem beseitigen.

Danke Yaslaw
 
Zurück