X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/c89986ac6447c14ebf351047b9441bcbf5637e76..dbd67e4387f1d33ce1ffdc505fad7fdd0eee7f29:/sql/Pg-upgrade2/custom_variables_delete_via_trigger.pl diff --git a/sql/Pg-upgrade2/custom_variables_delete_via_trigger.pl b/sql/Pg-upgrade2/custom_variables_delete_via_trigger.pl index 7eda9dea0..f73a6808f 100644 --- a/sql/Pg-upgrade2/custom_variables_delete_via_trigger.pl +++ b/sql/Pg-upgrade2/custom_variables_delete_via_trigger.pl @@ -14,9 +14,12 @@ sub run { my @queries = ( #Delete orphaned entries - q|DELETE FROM custom_variables WHERE sub_module = 'orderitems' AND trans_id NOT IN (SELECT id FROM orderitems)|, - q|DELETE FROM custom_variables WHERE sub_module = 'delivery_order_items' AND trans_id NOT IN (SELECT id FROM delivery_order_items)|, - q|DELETE FROM custom_variables WHERE sub_module = 'invoice' AND trans_id NOT IN (SELECT id FROM invoice)|, + q|DELETE FROM custom_variables WHERE sub_module = 'orderitems' + AND NOT EXISTS (SELECT id FROM orderitems WHERE orderitems.id = custom_variables.trans_id)|, + q|DELETE FROM custom_variables WHERE sub_module = 'delivery_order_items' + AND NOT EXISTS (SELECT id FROM delivery_order_items WHERE delivery_order_items.id = custom_variables.trans_id)|, + q|DELETE FROM custom_variables WHERE sub_module = 'invoice' + AND NOT EXISTS (SELECT id FROM invoice WHERE invoice.id = custom_variables.trans_id)|, #Create trigger q|CREATE OR REPLACE FUNCTION orderitems_before_delete_trigger() RETURNS trigger AS $$