Here are some more thoughts on how to represent recipes in a table ...
In some games, like my current Dragon's Dogma Dark Arisen,
you can find multiple recipes for the same resultant product.
To keep a table of such recipes, you could use these columns:
Recipe ID number,
Resultant product,
Ingredient Name,
Ingredient quantity
You would need to amass the required number of ingredients to
fulfill a unique recipe ID to create a resultant product.
These recipes would fit into 9 separate recipe IDs for product
Desiccated Herbs, with 2 rows for each recipe.
Enhanced weapons and armor could also fit into this data model,
for example:
This flat recipe model allows you to use SQL-like queries
to ask questions like "What can I make with a Goblin Horn?"
Some recipes might need an event description for an ingredient,
like the product Giant Evil Eye might require as an ingredient
the action Kill the Giant Floating Eyeball.
abg