Gejala adalah, bahwa Anda menjalankan UPDATE
(untuk semua baris) di dalam INSERT
trigger - keduanya memodifikasi tabel, yang tidak diperbolehkan.
Yang mengatakan, jika saya menebak niat pemicu Anda dengan benar, Anda tidak ingin memperbarui semua baris, tetapi hanya baris yang baru dimasukkan. Anda dapat mencapainya dengan mudah dengan
CREATE TRIGGER sum
BEFORE INSERT
ON news
FOR EACH ROW
SET NEW.sum = (NEW.int_views + NEW.ext_views)/NEW.pageviews
Perhatikan bahwa ini adalah BEFORE INSERT
pemicu, karena Anda ingin mengubah baris sebelum ditulis ke tabel.