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;