Я относительно новичок в SQL / SQLite и пытаюсь настроить триггер в своей базе данных.По сути, есть одна таблица, содержащая имена и идентификаторы людей, а другая таблица содержит записи для этих людей.Вот схема моих таблиц:
CREATE TABLE people(_id INTEGER PRIMARY KEY AUTOINCREMENT, name STRING NOT NULL,
amount_people INTEGER);
CREATE TABLE entries (_id INTEGER PRIMARY KEY AUTOINCREMENT,
user INTEGER NOT NULL, date STRING NOT NULL,
title STRING NOT NULL, amount_entry INTEGER NOT NULL,
notes STRING, FOREIGN KEY (user) REFERENCES people (_id) ON DELETE CASCADE);
Я хотел бы создать триггер, который обновляет баланс для пользователя в таблице людей каждый раз, когдаНовая запись создается для этого пользователя в таблице записей.Кажется, это должно быть легко, но я потратил последние 2 часа, пытаясь добиться этого безуспешно.
Вот моя неправильная версия триггера:
CREATE TRIGGER update_total_balance AFTER INSERT ON entries
BEGIN
UPDATE people SET amount_people = amount_people + (amount_entry FROM entries)
WHERE _id = (user FROM entries);
END;