Dalam row pemicu Anda memiliki akses ke dua versi baris yang sedang dimodifikasi:OLD berisi baris seperti sebelumnya (jika ada), dan NEW berisi baris seperti yang akan (jika itu akan ada.)
Untuk membuat pemicu Anda berfungsi seperti yang Anda jelaskan, Anda harus mengkondisikan WHERE klausa menggunakan nilai dari NEW , seperti ini:
CREATE TRIGGER update_loyalty_points
AFTER INSERT ON CWUserOwnsGame
FOR EACH ROW
UPDATE CWUsers
SET loyaltyPoints = loyaltyPoints +
(SELECT loyaltyPoints
FROM CWGameList
WHERE gameConsole = NEW.cName
AND gameName = NEW.gName)
WHERE username = NEW.uName;
Saya berasumsi bahwa Anda telah menamai kolom Anda secara konsisten di antara tabel. Perhatikan bahwa kolom yang benar di NEW memiliki nama yang sama dengan kolom di CWOwnsGame .