44 lines
990 B
MySQL
44 lines
990 B
MySQL
|
/*
|
||
|
* Triggers to handle task containers
|
||
|
*/
|
||
|
|
||
|
|
||
|
DROP FUNCTION IF EXISTS tgf_item_tc_ai( ) CASCADE;
|
||
|
CREATE FUNCTION tgf_item_tc_ai( )
|
||
|
RETURNS TRIGGER
|
||
|
LANGUAGE PLPGSQL
|
||
|
SECURITY DEFINER
|
||
|
AS $tgf_item_tc_ai$
|
||
|
BEGIN
|
||
|
INSERT INTO task_containers ( item_id )
|
||
|
VALUES ( NEW.item_id );
|
||
|
RETURN NEW;
|
||
|
END;
|
||
|
$tgf_item_tc_ai$;
|
||
|
|
||
|
REVOKE EXECUTE ON FUNCTION tgf_item_tc_ai( ) FROM PUBLIC;
|
||
|
|
||
|
CREATE TRIGGER tg_item_tc_ai AFTER INSERT ON items
|
||
|
FOR EACH ROW EXECUTE PROCEDURE tgf_item_tc_ai( );
|
||
|
|
||
|
|
||
|
DROP FUNCTION IF EXISTS tgf_task_tc_ai( ) CASCADE;
|
||
|
CREATE FUNCTION tgf_task_tc_ai( )
|
||
|
RETURNS TRIGGER
|
||
|
LANGUAGE PLPGSQL
|
||
|
SECURITY DEFINER
|
||
|
AS $tgf_task_tc_ai$
|
||
|
BEGIN
|
||
|
INSERT INTO task_containers ( task_id )
|
||
|
VALUES ( NEW.task_id );
|
||
|
INSERT INTO logical_task_containers ( task_id )
|
||
|
VALUES ( NEW.task_id );
|
||
|
RETURN NEW;
|
||
|
END;
|
||
|
$tgf_task_tc_ai$;
|
||
|
|
||
|
REVOKE EXECUTE ON FUNCTION tgf_task_tc_ai( ) FROM PUBLIC;
|
||
|
|
||
|
CREATE TRIGGER tg_task_tc_ai AFTER INSERT ON tasks
|
||
|
FOR EACH ROW EXECUTE PROCEDURE tgf_task_tc_ai( );
|