-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtrigger.sql
More file actions
39 lines (32 loc) ยท 772 Bytes
/
trigger.sql
File metadata and controls
39 lines (32 loc) ยท 772 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
CREATE Table my_users
(
user_name VARCHAR(50),
email VARCHAR(100)
);
-- Trigger Sql
INSERT INTO my_users VALUES('Mezba', 'mezba@mail.com'), ('Mir', 'mir@mail.com');
SELECT * from my_users;
SELECT * from deleted_users_audit;
CREATE Table deleted_users_audit
(
deleted_user_name VARCHAR(50),
deletedAt TIMESTAMP
)
-- trigger
CREATE or REPLACE Function save_deleted_user()
RETURNS TRIGGER
LANGUAGE plpgsql
AS
$$
BEGIN
INSERT INTO deleted_users_audit VALUES(OLD.user_name, now());
RAISE NOTICE 'Deleted user audit log created';
RETURN OLD;
END
$$
CREATE or REPLACE Trigger save_deleted_user_trigger
BEFORE DELETE
on my_users
FOR EACH ROW
EXECUTE FUNCTION save_deleted_user();
DELETE from my_users WHERE user_name = 'Mir';