したがって、2つの表があり、別の表の項目が追加または削除されると、増分または減分される1つの表に列があります。SQLite増分および減分列の1つの表のトリガー
私は2つのトリガーを持っていますが、動作するかどうかはわかりません。 私は間違っていたり、修正がなくなってしまった場合、正しいツリーを鳴らしているかどうか確認したいと思いますか?
SQL =
CREATE TABLE IF NOT EXISTS Agents(
Id INTEGER PRIMARY KEY,
Name TEXT,
Office_Count INT,
);
CREATE TABLE IF NOT EXISTS Branches(
Id INTEGER PRIMARY KEY,
Street_Address TEXT,
City TEXT,
Postcode TEXT,
Agents_Id INTEGER,
FOREIGN KEY(Agents_Id) REFERENCES Branches(Id)
);
CREATE TRIGGER Branches_Count_Increment AFTER INSERT ON Branches
BEGIN
UPDATE Agents SET
Office_Count=(MAX(Office_Count)+ 1 FROM Branches Where Agents_Id=Agents.Id) WHERE Id=NEW.Id;
END;
CREATE TRIGGER Branches_Count_Decrement AFTER DELETE ON Branches
BEGIN
UPDATE Agents SET
Office_Count=(MAX(Office_Count)- 1 FROM Branches Where Agents_Id=Agents.Id) WHERE Id=NEW.Id;
END;
私はそうしないことをお勧めします。必要に応じてオンザフライでカウントを計算する –