sql >> Database teknologi >  >> RDS >> Mysql

OPDATERING Samme række efter OPDATERING i Trigger

Du kan ikke opdatere rækker i tabellen i et efter opdateringsudløser.

Måske vil du have noget som dette:

CREATE TRIGGER `records_integrity` BEFORE UPDATE
ON `records`
FOR EACH ROW
    SET NEW.epc=IFNULL(new.earnings/new.clicks, 0);

EDIT:

Inde i en trigger har du adgang til OLD og NEW . OLD er de gamle værdier i posten og NEW er de nye værdier. I en før trigger, NEW værdier er det, der bliver skrevet til tabellen, så du kan ændre dem. I et efter trigger, NEW værdier er allerede skrevet, så de kan ikke ændres. Jeg tror, ​​at MySQL-dokumentationen forklarer dette ret godt.



  1. Sådan opretter du PL/SQL svag ref-markør i Oracle-databasen

  2. En oversigt over PRINT-erklæringen i SQL Server

  3. Hvordan opretter man forbindelse til lokal vært ved hjælp af JDBC?

  4. EF6 med MySQL. Den angivne nøgle var ikke til stede i ordbogen