Vinzenz Mai: Trigger oder Stored Procedure

Beitrag lesen

Hallo Tom,

also erstmal grundsätzlich breche ich mir hier einen ab,  um in die MySQL-DB 5.0.32 einen Trigger hineinzubekommen.

Tabelle adresse
Feld    writecounter

Für's erste würde es mir genügen, wenn writecounter bei jedem Update um eins hochgezählt werden würde. Ist ein Trigger dafür nicht geeignet?

Ja. Kannst Du tun. Da Du den neuen Datensatz verändern willst,
musst Du einen BEFORE-UPDATE-Trigger verwenden, wie Dir das Handbuch verrät:

<zitat>
In a BEFORE trigger, you can also change its value with SET NEW.col_name = value if you have the UPDATE privilege for it. This means you can use a trigger to modify the values to be inserted into a new row or that are used to update a row.
</zitat>

CREATE TRIGGER w_counter  
BEFORE UPDATE ON adresse  
FOR EACH ROW SET NEW.writecounter = NEW.writecounter + 1

läuft problemlos (MySQL 5.0.37 unter Windows XP SP2)

Wie muss das Statement aussehen, damit ich

  • auf der Konsole

Genau dieses Statement.

  • über PHP

Keine Ahnung. Ich teste SQL-Statements selten mit PHP. Sollte aber "genau dieses Statement" sein

in die Liste eintragen lassen kann?

Ach ja: Erster Test mit MySQL-Query-Browser :-)

Freundliche Grüße

Vinzenz