а) Вам необходимо ОБЪЯВИТЬ любые переменные в первых строках процедуры, включая их тип данных:
DECLARE bg_mere INT;
b) Чтобы извлечь значение из базы данных в переменную, вы используете синтаксис SELECT ... INTO:
SELECT categ_bg INTO bg_mere FROM categ_basic WHERE categ_basic.categ_id = id_mere;
в) У вас есть КОНЕЦ ЕСЛИ без соответствующего ЕСЛИ.
d) Закрывающему END нужна точка с запятой (но не BEGIN), только тогда вам понадобится разделитель для завершения всего оператора, и, наконец, вы должны сбросить разделитель обратно в нормальное состояние:
BEGIN
# body of the stored procedure goes here
END;
$$
DELIMITER ;