Skip to content

Instantly share code, notes, and snippets.

@joshdcuneo
Last active September 25, 2019 10:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save joshdcuneo/af07d1c4eed6e7fe5f499152c2f3c7c3 to your computer and use it in GitHub Desktop.
Save joshdcuneo/af07d1c4eed6e7fe5f499152c2f3c7c3 to your computer and use it in GitHub Desktop.
SQL Snippetes
CREATE TRIGGER clear_deleted_at BEFORE
UPDATE
ON todo FOR EACH ROW
WHEN (
NOT NEW.deleted
AND OLD.deleted IS DISTINCT
FROM
NEW.deleted
) EXECUTE PROCEDURE trigger_clear_deleted_at();
CREATE TRIGGER set_deleted_at BEFORE
UPDATE
ON todo FOR EACH ROW
WHEN (
NOT NEW.deleted
AND OLD.deleted IS DISTINCT
FROM
NEW.deleted
) EXECUTE PROCEDURE trigger_set_deleted_at();
CREATE
OR REPLACE FUNCTION trigger_clear_deleted_at() RETURNS TRIGGER AS $$ BEGIN NEW.deleted_at = NULL;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
CREATE
OR REPLACE FUNCTION trigger_set_deleted_at() RETURNS TRIGGER AS $$ BEGIN NEW.deleted_at = NOW();
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment