Ik zou de volgende tabellen willen voorstellen:
a) Recept - naam, beschrijving, ingrediënt en andere informatie
b) Ingrediënt - naam, beschrijving, van winkel (ja of geen waarde als het in een winkel is gekocht), recipieid (de ID van het recept voor dit ingrediënt). Hierdoor kunnen ingrediënten recepten hebben
c) recipie_ingredients - receipieid, ingrediëntid (in feite koppelt dit een recept aan de ingrediënten)
Het advies is correct, aangezien je in een cirkelvormige lus kunt belanden van ingrediënten tot recepten etc
UPDATE:Ik raad aan om een isingridient-kolom aan het recept toe te voegen, zodat alleen recepten waarvan bekend is dat het ingrediënten zijn, kunnen worden geselecteerd om toe te voegen aan de ingrediëntentabel. Dit kan helpen de kans op kringverwijzingen te verkleinen