source: music/triggers/prevent_artist_deletion.sql

Last change on this file was d1a8cb0, checked in by ManuelTrajcev <manueltrajcev7@…>, 2 weeks ago

triggers - deletion

  • Property mode set to 100644
File size: 409 bytes
Line 
1CREATE OR REPLACE FUNCTION prevent_artist_deletion()
2RETURNS TRIGGER AS $$
3BEGIN
4 IF EXISTS (
5 SELECT 1 FROM album WHERE artist_id = OLD.artist_id
6 ) THEN
7 RAISE EXCEPTION 'Cannot delete artist with albums.';
8 END IF;
9
10 RETURN OLD;
11END;
12$$ LANGUAGE plpgsql;
13
14CREATE TRIGGER trg_prevent_artist_deletion
15BEFORE DELETE ON artist
16FOR EACH ROW
17EXECUTE FUNCTION prevent_artist_deletion();
Note: See TracBrowser for help on using the repository browser.