Sebastian Merk: Mehrere Inserts prüfen...

Hallo,

Ich habe folgendes Problem:

Ich habe in PHP/HTML Formulare, die Daten in verschiedene Tabellen speichern. Da meines Wissens nach sich der Insert-Befehl nicht auf mehrere Tabellen gleichzeitig verteilen lässt, muss ich wohl mehrere Insert-Statements benutzen.

Nur: Wie überprüfe ich den korrekten Eintrag? Kann ja sein, dass einer der Inserts schief geht und plötzlich meine Datenbank inkonsistent ist.
Klar könnte ich ein Error-Handling benutzen und dann einfachh alle bis dahin eingetragenen Inserts wieder löschen, nur finde ich das nicht wirklich schön.

Gibt es für so etwas einen Design Pattern? Hat jemand eine gute Lösung für mich?

Viele Grüße,
Sebastian Merk

  1. echo $begrüßung;

    Nur: Wie überprüfe ich den korrekten Eintrag? Kann ja sein, dass einer der Inserts schief geht und plötzlich meine Datenbank inkonsistent ist.

    Im Allgemeinen geben die Datenbanken Fehlerzustände an die Applikation weiter. Wenn du solch eine Frage stellst, gehe ich davon aus, dass du diese Information bisher ignoriert hast.

    Klar könnte ich ein Error-Handling benutzen und dann einfachh alle bis dahin eingetragenen Inserts wieder löschen, nur finde ich das nicht wirklich schön.
    Gibt es für so etwas einen Design Pattern? Hat jemand eine gute Lösung für mich?

    Das ist unter dem Begriff Transaktion bekannt, aber nicht in allen Datenbanksystemen implementiert.

    echo "$verabschiedung $name";

    1. Super! Danke für die Antworten! Das Stichwort Transaktion bringt mich doch schonmal um einiges weiter...

      Viele Grüße
      Sebastian

  2. Hello,

    Gibt es für so etwas einen Design Pattern? Hat jemand eine gute Lösung für mich?

    du suchst nach Transaktionen (=Gruppierung von SQL-Statements in eine unteilbare Einheit) - auf Transaktionen kannst du ein ROLLBACK anfordern, womit die DB in den Zustand vor dem Start zurückgesetzt wird. Ansatzweise beschrieben ist es hier, leider ist der enthaltene Link tot, aber mit den Stichworten transaction und php müsstest du bei Google auch Ergebnisse erzielen können.

    MfG
    Rouven

    --
    -------------------
    Eine Bilanz ist wie der Bikini einer Frau. Sie zeigt fast alles, aber verdeckt das Wesentliche  --  Günter Stotz, Regierungsdirektor des baden-württembergischen Wirtschaftsministeriums