Add better data removal, fix small benign bug
This commit is contained in:
@@ -6,4 +6,5 @@ DROP TABLE "user";
|
||||
|
||||
-- Trigger functions
|
||||
|
||||
DROP FUNCTION IF EXISTS delete_inactive_accounts();
|
||||
DROP FUNCTION IF EXISTS update_last_updated_column();
|
||||
@@ -1,4 +1,4 @@
|
||||
-- Trigger functions
|
||||
-- Functions
|
||||
|
||||
CREATE OR REPLACE FUNCTION update_last_updated_column()
|
||||
RETURNS TRIGGER AS $$
|
||||
@@ -8,6 +8,13 @@ BEGIN
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
|
||||
CREATE OR REPLACE FUNCTION delete_inactive_accounts() RETURNS void AS $$
|
||||
BEGIN
|
||||
DELETE FROM account
|
||||
WHERE last_updated < NOW() - INTERVAL '2 months';
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
|
||||
-- Tables
|
||||
|
||||
CREATE TABLE "user" (
|
||||
@@ -20,7 +27,7 @@ CREATE TABLE "link_request" (
|
||||
user_id TEXT UNIQUE NOT NULL,
|
||||
expires TIMESTAMP NOT NULL,
|
||||
|
||||
CONSTRAINT fk_user_id FOREIGN KEY (user_id) REFERENCES "user" (id)
|
||||
CONSTRAINT fk_user_id FOREIGN KEY (user_id) REFERENCES "user" (id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE TABLE "account" (
|
||||
@@ -32,7 +39,7 @@ CREATE TABLE "account" (
|
||||
expires TIMESTAMP NOT NULL,
|
||||
last_updated TIMESTAMP NOT NULL DEFAULT NOW(),
|
||||
|
||||
CONSTRAINT fk_account_user_id FOREIGN KEY (user_id) REFERENCES "user" (id)
|
||||
CONSTRAINT fk_account_user_id FOREIGN KEY (user_id) REFERENCES "user" (id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
-- Triggers
|
||||
|
||||
Reference in New Issue
Block a user