Moin!
Mit REPLACE beispielsweise.
danke für den Tipp. Wenn der Datensatz eindeutig indentifizierbar
wäre, wäre das eine elegante Lösung. Ist er aber leider nicht ;(
Es muss doch aber eine eindeutige Zuordnung von DB-Datensatz zu Array-Datensatz geben, d.h. wenn du einen bestimmten Datensatz aus dem Array hast, musst du wissen, welchen zugehörigen Datensatz in der DB du aktualisieren willst.
Mein Lösung ist nun ein Timestamp.
Klingt nach dem falschen Ansatz.
REPLACE
ist die Brachialmethode. Hat auch so ihre Nachteile, beispielsweise was die Wirkung auf auto-increment-Felder angeht.
INSERT ... ON DUPLICATE KEY UPDATE ... (in MySQL)
ist deutlich netter. Erfordert allerdings, dass der zu insertierende Key beim INSERT bekannt ist und zu einem Konflikt in der Unique-Spalte führt (also Primärindex oder UNIQUE auf der Spalte).
Andernfalls kannst du ja aber auch gar nicht feststellen, welcher Datensatz überhaupt schon existiert, sondern müsstest alle Datensätze im Array als neu behandeln.
- Sven Rautenberg