Heim >Datenbank >MySQL-Tutorial >Können MySQL-Trigger dieselbe Tabelle aktualisieren, aus der sie aufgerufen werden?
MySQL-Trigger: Einschränkungen beim Aktualisieren derselben Tabellenzeilen
Frage: Wie legen Sie Werte für eine neue Zeile in einem MySQL-Trigger fest und aktualisieren diese? eine weitere Zeile in derselben Tabelle?
Es wurde versucht, einen Trigger zu erstellen, der beim Einfügen der Zeile die folgenden Vorgänge ausführt:
Der Auslöser führte jedoch zu einem Fehler: „Tabellenaufteilung im Speicher kann nicht aktualisiert werden.“ Funktion/Trigger, da sie bereits von der Anweisung verwendet wird, die diese gespeicherte Funktion/Trigger aufgerufen hat. MySQL-Trigger sind in ihrer Fähigkeit eingeschränkt, dieselbe Tabelle zu aktualisieren, von der aus sie aufgerufen wurden. Diese Einschränkung wird eingeführt, um Datenintegritätsprobleme zu verhindern, die durch gleichzeitige Aktualisierungen entstehen könnten.
Der empfohlene Ansatz zum Erreichen der gewünschten Funktionalität besteht darin, eine gespeicherte Prozedur zu erstellen, die sowohl die Einfügungs- als auch die Aktualisierungsvorgänge in einer einzigen Transaktion kapselt. Dadurch wird sichergestellt, dass die Datenbank während des gesamten Prozesses in einem konsistenten Zustand bleibt.
Das obige ist der detaillierte Inhalt vonKönnen MySQL-Trigger dieselbe Tabelle aktualisieren, aus der sie aufgerufen werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!