0
저는 SQL/SQLite에 비교적 익숙하며 데이터베이스에 트리거를 설정하려고합니다. 기본적으로 사람의 이름과 ID를 포함하는 하나의 테이블이 있고 다른 테이블에는 해당 사람들의 항목이 들어 있습니다. 여기 내 테이블의 스키마는 다음과 같습니다Android 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;
아 그리고 내가 달성하기 위해 노력하고 있었는지 정확히! 방아쇠를 당길 때의 시도 중 일부에서, 나는 오래되고 새로운 것으로 amount_people을 접두어로 붙였습니다. 나는 그것이 잘못되었다고 생각합니다. 응답 주셔서 감사합니다! – cbrown