aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasaya Tojo <masaya@tojo.tokyo>2023-03-01 02:03:28 +0900
committerMasaya Tojo <masaya@tojo.tokyo>2023-03-02 09:22:36 +0900
commitd97bccef31c3a16be43bf94ed1632d22e61298b4 (patch)
tree784b981751764c0a5e505ad60ab478ee849cdbae
parente36a6b94211badaaf868a2082c348a37e65d86e1 (diff)
Add update_timestamp trigger to transactions table.
-rw-r--r--deploy/transactions_update_timestamp.sql12
-rw-r--r--revert/transactions_update_timestamp.sql7
-rw-r--r--sqitch.plan1
-rw-r--r--verify/transactions_update_timestamp.sql14
4 files changed, 34 insertions, 0 deletions
diff --git a/deploy/transactions_update_timestamp.sql b/deploy/transactions_update_timestamp.sql
new file mode 100644
index 0000000..96b138d
--- /dev/null
+++ b/deploy/transactions_update_timestamp.sql
@@ -0,0 +1,12 @@
+-- Deploy kakeibo:transactions_update_timestamp to pg
+-- requires: transactions
+-- requires: update_timestamp
+
+BEGIN;
+
+CREATE OR REPLACE TRIGGER update_timestamp
+ BEFORE UPDATE ON kakeibo.transactions
+ FOR EACH ROW
+ EXECUTE FUNCTION kakeibo.update_timestamp();
+
+COMMIT;
diff --git a/revert/transactions_update_timestamp.sql b/revert/transactions_update_timestamp.sql
new file mode 100644
index 0000000..6f5864b
--- /dev/null
+++ b/revert/transactions_update_timestamp.sql
@@ -0,0 +1,7 @@
+-- Revert kakeibo:transactions_update_timestamp from pg
+
+BEGIN;
+
+DROP TRIGGER update_timestamp ON kakeibo.transactions;
+
+COMMIT;
diff --git a/sqitch.plan b/sqitch.plan
index de81c12..5da13ea 100644
--- a/sqitch.plan
+++ b/sqitch.plan
@@ -11,3 +11,4 @@ items [appschema transactions] 2023-02-28T12:08:45Z Masaya Tojo <masaya@tojo.tok
insert_item [appschema items] 2023-02-28T13:13:22Z Masaya Tojo <masaya@tojo.tokyo> # Add function to insert item.
delete_item [appschema items] 2023-02-28T13:13:39Z Masaya Tojo <masaya@tojo.tokyo> # Add function to delete item.
update_timestamp [appschema] 2023-02-28T14:30:04Z Masaya Tojo <masaya@tojo.tokyo> # Add triger function to update a timestamp.
+transactions_update_timestamp [transactions update_timestamp] 2023-02-28T16:43:49Z Masaya Tojo <masaya@tojo.tokyo> # Add update_timestamp trigger to transactions table.
diff --git a/verify/transactions_update_timestamp.sql b/verify/transactions_update_timestamp.sql
new file mode 100644
index 0000000..50f348e
--- /dev/null
+++ b/verify/transactions_update_timestamp.sql
@@ -0,0 +1,14 @@
+-- Verify kakeibo:transactions_update_timestamp on pg
+
+BEGIN;
+
+DO $$
+ BEGIN
+ ASSERT (SELECT 1 from information_schema.triggers
+ WHERE trigger_schema = 'kakeibo'
+ AND event_object_table = 'transactions'
+ AND trigger_name = 'update_timestamp');
+ END
+$$;
+
+ROLLBACK;