CREATE TRIGGER enfore_product_nesting_level BEFORE UPDATE ON products BEGIN -- Currently only 1 level is supported SELECT CASE WHEN(( SELECT 1 FROM products p WHERE IFNULL(NEW.parent_product_id, '') != '' AND IFNULL(parent_product_id, '') = NEW.id ) NOTNULL) THEN RAISE(ABORT, "Unsupported product nesting level detected (currently only 1 level is supported)") END; END;