treasuredb/schema/triggers/enforceSpentImmutableOutsideTrigger.sql
2017-01-23 19:08:04 +01:00

10 lines
395 B
SQL

-- Prevent modification of spent value outside triggers which must adjust it exclusively
-- when new transfer records are inserted
CREATE TRIGGER enforceSpentImmutableOutsideTrigger
BEFORE UPDATE OF spent ON Credit
WHEN NOT EXISTS (SELECT * FROM __INTERNAL_TRIGGER_STACK)
BEGIN
SELECT RAISE(FAIL, "spent is set and adjusted automatically according to added Transfer records");
END;