Как я могу написать триггер обновления между двумя таблицами
у меня есть две таблицы, одна называется неплательщиков и таблица пользователей .неплательщиков имеет 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