2017-01-10 5 views
1

i eine haben Tabelleerhalten aktualisiert Feldname und Wert in Trigger

product_id rate  Quantity modified_fields 
    1   100   4 
    3   32   2 
    5   43   1 

so genannte Produkt, wenn ich in der Produkttabelle jedes Feld am Aktualisierung

nehme ich Rate am Ändern 100-50 dann muss ich einen Trigger einrichten, die modified_fields Spalte mit Rate aktualisieren: 50 (Neuer Wert)

product_id  rate  Quantity modified_fields 
     1   50   4   rate:50 
     3   32   2 
     5   43   1 

Edit: Was ich im Grunde braucht, dass Ich muss identifizieren, welche bestimmte Spalte bei einem Update-Vorgang bearbeitet wurde. Tabelle kann 50 Spalten haben, und jede von ihnen kann aktualisiert werden. Trigger bestimmt im Wesentlichen, welche Spalte aktualisiert wird, und den entsprechenden neuen Wert. Es wird dann aktualisieren, um die geänderten Felder Spalte mit der Update Spaltenname: Neuer Wert

Jede Hilfe

+0

Sie brauchen Abfrage für Trigger? – rahulsm

+0

Abfrage bieten dann –

+0

können Sie direkt schreiben einfache Abfrage als UPDATE Produktsatz Rate = 50, modifizierte Felder = CONCAT ('Rate', ':', 50) für die gleiche Tabelle, wenn es andere Tabelle wird dann fein, aber für die gleiche auslösen Tabelle können Sie diese verwenden – rahulsm

Antwort

1

geschätzt würde Sie die Referenz von link1 und link2 zu bekommen.

Alternativ können Sie wie folgt versuchen,

UPDATE product set rate = 50, modified_fields = CONCAT('rate',':',50); 

Wenn es für gleiche Tabelle ist. Trigger sollte verwendet werden, wenn Spalten einer anderen Tabelle aktualisiert werden.

+0

wir können die Produkttabelle nach der Aktualisierung mit dem Trigger –

+0

nicht aktualisieren, sobald ich dies vor dem Aktualisierungstrigger in der gleichen Tabelle verwendet habe, hat es funktioniert –

+0

Ist es erforderlich, Trigger auszuführen nach dem Update ? Mittel können wir Trigger nicht vor dem Update ausführen? – rahulsm