Skip to content

Instantly share code, notes, and snippets.

@cristianc-ty
Created February 8, 2018 13:11
Show Gist options
  • Save cristianc-ty/edd998764f95e2c9236cc47c7eb49cc6 to your computer and use it in GitHub Desktop.
Save cristianc-ty/edd998764f95e2c9236cc47c7eb49cc6 to your computer and use it in GitHub Desktop.
customer_table_triggers.sql
create function customer_search_customer_update()
returns trigger
security definer
language plpgsql
as $$
begin
update customer_search
set is_stale=true,
name=new.name,
deleted_at=new.deleted_at
where customer_id=new.id
and is_stale<>true;
return new;
end;
$$;
create trigger lazy_customer_update after update on customer
for each row execute procedure customer_search_customer_update();
create function customer_search_customer_delete()
returns trigger
security definer
language plpgsql
as $$
begin
delete from customer_search
where customer_id=old.id;
return old;
end;
$$;
create trigger lazy_customer_delete after delete on customer
for each row execute procedure customer_search_customer_delete();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment