Advertisement
Guest User

Untitled

a guest
Apr 15th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.55 KB | None | 0 0
  1. CREATE FUNCTION check_book_permission_before_checkout()
  2.   returns TRIGGER AS $$
  3. DECLARE
  4.   requires_permission BOOLEAN;
  5. BEGIN
  6.   requires_permission := (SELECT requires_permission FROM books WHERE id = NEW.book_id);
  7.   IF requires_permission AND NEW.permitted_by_id IS NULL
  8.   THEN RAISE EXCEPTION 'A permission is required to check out the requested book.';
  9.   END IF;
  10. END;
  11. $$
  12. language plpgsql;
  13.  
  14. CREATE TRIGGER validate_book_checkout_policy
  15.   before INSERT
  16.   ON book_lendings
  17.   FOR each ROW EXECUTE PROCEDURE check_book_permission_before_checkout();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement