Frank (no reg): Suche nächsten zu bearbeitenden Datensatz

Beitrag lesen

Hallo,

Frage: wie (und auch wieso) soll das System mehrere gleichzeitige Durchlaeufe erlauben bzw unterstuetzen? Wann bzw wodurch soll ein solcher Durchlauf angestartet werden?

Definiere "naechsten Datensatz". Der naechste in mail_adressen oder mail_infotext? Ich nehme mal an: mail_infotext. Der "naechste" definiert sich dann dadurch: Gib mir die kleinste ID aus mail_infotext, die noch nicht in mail_status in der Spalte i_id drin steht.

in SQL uebersetzt (pi * daumen):
SELECT MIN(ID)
  FROM mail_infotext
  WHERE ID NOT IN (SELECT i_id FROM mail_status)

Du solltest natuerlich auch gewaehrleisten, dass der momentan startende Prozess den Eintrag in mail_status so schnell und kurz wie moeglich gestaltet und waehrenddessen diese Tabelle sperrt, z.b. durch eine Datenbank Transaktion.

Noch Fragen?

Ciao, Frank