From 12b9748c43bc7178e9cbef35806267221e5b4659 Mon Sep 17 00:00:00 2001 From: DL6ER Date: Mon, 7 Sep 2020 21:11:57 +0200 Subject: [PATCH] Fine-tune adlist:adte_modified trigger and don't default new date_updated column to now but use NULL instead Signed-off-by: DL6ER --- advanced/Scripts/database_migration/gravity/12_to_13.sql | 7 +++++++ advanced/Templates/gravity.db.sql | 6 +++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/advanced/Scripts/database_migration/gravity/12_to_13.sql b/advanced/Scripts/database_migration/gravity/12_to_13.sql index 48dad69f..d16791d6 100644 --- a/advanced/Scripts/database_migration/gravity/12_to_13.sql +++ b/advanced/Scripts/database_migration/gravity/12_to_13.sql @@ -6,6 +6,13 @@ BEGIN TRANSACTION; ALTER TABLE adlist ADD COLUMN date_updated INTEGER; +DROP TRIGGER tr_adlist_update; + +CREATE TRIGGER tr_adlist_update AFTER UPDATE OF address,enabled,comment ON adlist + BEGIN + UPDATE adlist SET date_modified = (cast(strftime('%s', 'now') as int)) WHERE id = NEW.id; + END; + UPDATE info SET value = 13 WHERE property = 'version'; COMMIT; \ No newline at end of file diff --git a/advanced/Templates/gravity.db.sql b/advanced/Templates/gravity.db.sql index e6cb4c59..2aa7e8f8 100644 --- a/advanced/Templates/gravity.db.sql +++ b/advanced/Templates/gravity.db.sql @@ -32,7 +32,7 @@ CREATE TABLE adlist date_added INTEGER NOT NULL DEFAULT (cast(strftime('%s', 'now') as int)), date_modified INTEGER NOT NULL DEFAULT (cast(strftime('%s', 'now') as int)), comment TEXT, - date_updated INTEGER NOT NULL DEFAULT (cast(strftime('%s', 'now') as int)) + date_updated INTEGER ); CREATE TABLE adlist_by_group @@ -86,9 +86,9 @@ CREATE TABLE client_by_group PRIMARY KEY (client_id, group_id) ); -CREATE TRIGGER tr_adlist_update AFTER UPDATE ON adlist +CREATE TRIGGER tr_adlist_update AFTER UPDATE OF address,enabled,comment ON adlist BEGIN - UPDATE adlist SET date_modified = (cast(strftime('%s', 'now') as int)) WHERE address = NEW.address; + UPDATE adlist SET date_modified = (cast(strftime('%s', 'now') as int)) WHERE id = NEW.id; END; CREATE TRIGGER tr_client_update AFTER UPDATE ON client