Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Datenbanken und PHP Grundkurs

Voneinander abhängige Operationen in Transaktionen bündeln

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
In manchen Fällen sollen mehrere Datenbankvorgänge nur gemeinsam ausgeführt werden. Das heißt, wenn einer nicht klappt, soll auch der andere nicht durchgeführt werden. Dafür brauchen Sie Transaktionen, die sich mit PDO komfortabel erstellen lassen.

Transkript

Wenn mehrere Datenbankoperationen gesamt durchgeführt oder gesamt verworfen werden sollen, braucht man Transaktionen. Ein Beispiel: Ich habe meine Tabelle mit Gerichten, und ich habe meine Tabelle mit Kategorien, und Hauptgericht hat die Nummer 4. Bei den Gerichten ist ebenfalls dann bei der Kategorie-ID angegeben, wenn es sich um ein Hauptgericht handelt. Wenn ich jetzt diese Nummer ändern möchte, beispielsweise soll Hauptgericht nun die Nummer 7 haben, dann soll natürlich entsprechend auch die Tabelle "Gerichte" angepasst werden, wenn es aber schief geht bei der Umbenennung der Kategorien, dann soll natürlich auch bei Gerichten nichts geändert werden. Also entweder beide Aktionen, oder keine Aktion. Sehen wir uns an, wie das funktioniert bei PDO. Ich beginne mit einem "try"-Block, und an dieser Stelle starte ich meine Transaktion mit "beginTransaction". Dann kommen meine beiden Befehle, die durchgeführt werden sollen, und schließlich kommt ein "commit". Wenn das Ganze nicht klappt, wird eine PDOException geworfen, und ich kann es rückgängig machen mit "RollBack". Im ersten Fall baue ich einmal einen Fehler ein, und jetzt sollte, weil das hier natürlich nicht klappt, auch bei den Gerichten nichts geändert werden. Sehen wir uns das einmal an: Wir bekommen eine Fehlermeldung, und wenn wir uns die Gerichte ansehen, so hat sich da nichts geändert. Ich korrigiere diesen Fehler, und jetzt sollten beide Aktionen stattfinden. Keine Meldung. Ich aktualisiere, und das ist jetzt immer die Kategorie-ID 7, und bei Kategorien habe ich ebenfalls die ID an dieser Stelle geändert. Sie haben gesehen, wie man mit Transaktionen arbeitet bei PDO, "beginTransaction" startet das Ganze, "commit" führt das dann durch, und wenn das nicht klappt, gibt es eine PDOException, man kann das rückgängig machen, und auch eine Meldung ausgeben lassen.

Datenbanken und PHP Grundkurs

Erfahren Sie alles, was Sie brauchen, um mit PHP Datenbanken anzusprechen, Daten einzutragen, zu verändern, zu löschen und abzufragen.

1 Std. 44 min (29 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:11.01.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!