"END;"
"CREATE TRIGGER alarm_enabled "
- "AFTER UPDATE OF " COLUMN_ENABLED " ON " TABLE_ALARMS " "
- "WHEN new." COLUMN_ENABLED " <> 0 "
+ "AFTER UPDATE ON " TABLE_ALARMS " "
+ "WHEN old." COLUMN_ENABLED " <> new." COLUMN_ENABLED " AND new." COLUMN_ENABLED " <> 0 "
"BEGIN "
STATEMENT_SET_ALARM(COLUMN_ALARM_ID)
"END;"
"CREATE TRIGGER alarm_disabled "
- "AFTER UPDATE OF " COLUMN_ENABLED " ON " TABLE_ALARMS " "
- "WHEN new." COLUMN_ENABLED " = 0 "
+ "AFTER UPDATE ON " TABLE_ALARMS " "
+ "WHEN old." COLUMN_ENABLED " <> new." COLUMN_ENABLED " AND new." COLUMN_ENABLED " = 0 "
"BEGIN "
STATEMENT_UNSET_ALARM(COLUMN_ALARM_ID)
"END;"
"CREATE TRIGGER alarm_updated "
- "AFTER UPDATE OF " COLUMN_DATE ", " COLUMN_REPEAT " ON " TABLE_ALARMS " "
+ "AFTER UPDATE ON " TABLE_ALARMS " "
"WHEN old." COLUMN_ENABLED " <> 0 AND new." COLUMN_ENABLED " <> 0 "
+ "AND (old." COLUMN_DATE " <> new." COLUMN_DATE " OR old." COLUMN_REPEAT " <> new." COLUMN_REPEAT ") "
"BEGIN "
"SELECT " FUNCTION_UNSET_ALARM "(old." COLUMN_ALARM_ID ");"
STATEMENT_SET_ALARM(COLUMN_ALARM_ID)