Jag skulle föreslå följande tabeller:
a) Recept - namn, beskrivning, ingrediens och annan information
b) Ingrediens - namn, beskrivning, från butik (ja eller nej värde om den köps från en butik), receptid (id för receptet för denna ingrediens). Detta gör det möjligt för ingredienser att ha recept
c) recipie_ingredients - receipieid, ingredientid (i grund och botten kopplar detta ett recept till dess ingredienser)
Råden är korrekta, eftersom du kan hamna i en cirkulär slinga form ingredienser till recept etc
UPPDATERING:Jag skulle rekommendera att lägga till en ingredienskolumn i receptet så att endast recept som är kända för att vara ingredienser kan väljas att lägga till i ingredienstabellen. Detta kan bidra till att minska risken för cirkulära referenser