Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Pemicu MySQL setelah dimasukkan dan setelah pembaruan

Pastikan Anda mengubah pembatas sebelum menentukan pemicu. Pastikan juga Anda menggunakan tabel dan nama kolom yang sama saat membuat tabel dan pemicu (Anda menggunakan att dan attendance , dan SID dan StudID , dalam contoh Anda).

Seperti itu, definisi pemicu tidak menyebabkan kesalahan saat saya mengujinya di MySQL 5.1.55 setelah menyetel pembatas.

delimiter $$
CREATE TRIGGER `att_up` 
  AFTER UPDATE ON `attendance`
FOR EACH ROW 
BEGIN
  DECLARE Zeros INT;
  DECLARE Ones INT;
  DECLARE total INT;
  DECLARE attend FLOAT;
  SELECT SUM(8-(h1+h2+h3+h4+h5+h6+h7+h8)), 
         SUM(h1+h2+h3+h4+h5+h6+h7+h8),
         SUM(8-(h1+h2+h3+h4+h5+h6+h7+h8)) + SUM(h1+h2+h3+h4+h5+h6+h7+h8)
    INTO Zeros, Ones, Total FROM attendance 
    WHERE SID=NEW.SID;
  SET attend=((Zeros-Ones)/total)/100;
  INSERT INTO per (SID, CID, per) values (NEW.SID, NEW.CID, attend)
    ON DUPLICATE KEY UPDATE per=attend;
END$$
delimiter ;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Membuat daftar tertaut atau antrian serupa di MySQL?

  2. Transpose kueri MySQL - perlu baris menjadi kolom

  3. Bagaimana cara mengetahui berapa banyak baris mysql yang diperbarui

  4. Mengisi JTree dari database

  5. kueri bujur dan lintang mySQL untuk baris lain dalam radius x mil