Предлагам следните таблици:
a) Рецепта - име, описание, съставка и друга информация
b) Съставка - име, описание, fromstore (да или без стойност, ако е закупена от магазин), recipieid (id на рецептата за тази съставка). Това позволява на съставките да имат рецепти
c) recipie_ingredients - receipieid, ingredientid (по принцип това свързва рецептата с нейните съставки)
Съветът е правилен, тъй като можете да се окажете в кръгова верига от съставки до рецепти и т.н.
АКТУАЛИЗАЦИЯ:Бих препоръчал да добавите колона isingridient към рецептата, така че само рецепти, за които е известно, че са съставки, да могат да се избират за добавяне към таблицата със съставки. Това може да помогне за намаляване на шансовете за кръгови препратки