Alex: Datensatz ergänzen oder löschen

Beitrag lesen

Tach nochmal :)

Das ist ein Verweis auf eine bereits im Hintergrund abgefragte Ergebnismenge. Die einzelnen Ergebnisse bekommst du nur über die Fetch-Funktionen. Und du kannst dir aus den Werten nur ein neues Statement zusammenstellen. Wenn du auf mysqli umsteigst, kannst du zwar mit mysqli_fetch_all() ein fertiges Array bekommen, aber auch das müsstest du durchackern. Einfacher geht es mit einem INSERT ... SELECT ... ON DUPLICATE KEY UPDATE ...

Hhhm, das ganze in einer Abfrage zu kombinieren erscheint sehr praktisch. Zumindest habe ich jetzt wieder was zum Einlesen/Recherchieren.

Auch wenn ich dann ja spätestens beim Löschen eine zweite identische SELECT-Abfrage einbaue und hier dann am Ende eine Zwischenspeicherung in einem Array doch sauberer/performanter wäre, als ein zweites Select einzusetzen? Ich meine praktisch wird das wahrscheinlich vernachlässigbar sein, zumal wir von ca. 100 Datensätzen (Benutzern) sprechen, aber hinterfragen wollte ich das trotzdem :)

Du kannst WHERE name NOT IN (...) nehmen. In die Klammern kommt dann ein SELECT, dass dir die Namen liefert (falls du die und nicht die IDs als Primärschlüssel verwenden willst. Warum eigentlich (nicht)?).

An diese Kombination habe ich noch garnicht gedacht. Wenn ich das ans Laufen kriege wäre das wirklich eine großartige Vereinfachung. Vielen Dank :)

Die ID nicht als Primärschlüssel zu nehmen, favorisiere ich deshalb, weil die Statistiktabelle quasi alle Informationen enthalten soll und somit auch Standalone verwendbar ist (wenn das CMS mal nicht mehr ist oder gegen ein anderes ausgetauscht wird). Außerdem bekomme ich die Statistikwerte aus einer API wo der name das eindeutige Zuordnungskriterium ist. Im Hinblick auf eine saubere Normalisierung werde ich diesen Ansatz aber nochmal überdenken :)