Как я могу написать триггер обновления между двумя таблицами
у меня есть две таблицы, одна называется неплательщиков и таблица пользователей .неплательщиков имеет mypin и debt_amount и пользователей mypin и должника.я хочу, чтобы триггер, который будет обновлять должника в таблице "пользователи", если mypin существует в таблице users, где debt_amount=0 в неплательщиков .триггер ввода нулевого значения в должника, если mypin неплательщиков в таблице имеет нулевую ценность в debt_amount.
ссылка на базу данных
Что я уже пробовал:
CREATE TABLE users ( user_id INT AUTO_INCREMENT, debtor int(10), myPIN varchar(255), PRIMARY KEY (user_id) ) ENGINE=INNODB; CREATE TABLE defaulters ( defaulters_id INT AUTO_INCREMENT, myPIN varchar(255), debt_amount varchar(255), PRIMARY KEY (defaulters_id) ) ENGINE=INNODB;
это то, что я пробовал, и это дает ошибку
CREATE TRIGGER `after_update_defaulters` AFTER INSERT ON `defaulters` AFTER insert on defaulters FOR EACH ROW BEGIN IF ( EXISTS ( SELECT DISTINCT `myPIN` FROM defaulters WHERE `Debt_Amount` = 0; ) ) THEN UPDATE users SET debtor = 0; WHERE myPIN = NEW.myPIN; END IF; END
phil.o
Пожалуйста, также предоставьте сообщение об ошибке.
harristars
#1064 - у вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MariaDB, чтобы найти правильный синтаксис для использования рядом с 'AFTER insert on defaulters
ДЛЯ КАЖДОЙ СТРОКИ
НАЧАТЬ
ЕСЛИ ( СУЩЕСТВУЕТ (
- на линии 2