DB: MySQLMySQL Trigger Fehler: 1.442
verwenden: MySQL Workbench
ich derzeit an einem Projekt für die Klasse arbeite, wo wir einen Flughafen-Website zu gestalten haben, in denen Benutzer anmelden können/registrieren und Karten kaufen für verschiedene Flüge angeboten. Nachdem ich einige Zeit an dem Projekt gearbeitet habe, wurde mir klar, dass mein Auslöser nicht funktioniert.
erhalte ich die Fehlermeldung: Error Code: 1442. Can't update table 'reservation' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
ich über diesen Fehler gestolpert, indem Sie versuchen eine Reservierung einzulegen, bevor das Formular für die Erstellung von Benutzern Tickets auszuwählen und zu kaufen. Ich habe mich gefragt, ob jemand einen Blick auf meine Datenbank werfen, den Befehlsgebrauch einfügen könnte und auch meinen Triggercode. Jede Hilfe würde sehr geschätzt werden, weil ich am witzigen Ende versuche, das stundenlang herauszufinden.
Befehl Einfügen: http://pastebin.com/tyBPWNDd
Entire DB und Auslöser in Frage: http://pastebin.com/BvUj1NdH
Gelöst: Dank an alle Helfer ich in der Lage war, mein Problem zu identifizieren, die rekursive Trigger verwendet wurde, wenn MySQL nicht unterstützt . Ich löste mein Problem, indem ich den rekursiven Code löschte und das Backend meiner Website das current_date-Set anstelle des Triggers behandelte. Ich werde den Fixed Trigger in Kürze veröffentlichen.
Ein Trigger kann nicht die Tabelle ändern, die es ausgeführt hat. Sie müssen Ihre Logik neu anordnen, damit dies nicht geschieht. –
@TimBiegeleisen Danke! Sie waren eine große Hilfe – Tonk
Ich bin froh, Ihnen nützlich zu sein, aber vielleicht sollten Sie kommentieren, wie Sie das Problem gelöst haben, damit diese Frage für andere hilfreicher ist. –