3 CREATE OR REPLACE FUNCTION shipitem_trigger_change() RETURNS trigger
6 v_shiphead_order_id INT;
7 v_coitem_cohead_id INT;
10 -- verify that the order item is from the same ship
19 shiphead_id = NEW.shipitem_shiphead_id
29 coitem_id = NEW.shipitem_orderitem_id
33 IF v_coitem_cohead_id != v_shiphead_order_id THEN
34 RAISE EXCEPTION 'Attempted create a ship item with the wrong order item';
41 LANGUAGE plpgsql VOLATILE
44 ALTER FUNCTION shipitem_trigger_change()
48 GRANT ALL ON FUNCTION shipitem_trigger_change() TO xtrole;
50 CREATE TRIGGER _shipitem_trigger_change
51 BEFORE INSERT OR UPDATE ON shipitem
52 FOR EACH ROW EXECUTE PROCEDURE shipitem_trigger_change();