If you want 3NF (and you should unless and until you find performance is a problem), you should either:
- store the order ID in each row of the food_item table (if food_items is a per-order table);
- or use a many-to-many relationship (if food_items is just the possible things you can order).
With the first option, something like this would suffice:
Orders:
order_id
other stuff
FoodItems:
order_id
item_id
other stuff.
For the second option, a separate table provides the many-to-many relationship:
Orders:
order_id
other stuff
FoodItems:
item_id
other stuff.
FoodItemsInOrder:
order_id
item_id
count
In my opinion, all database tables should be designed in third-normal form. Once you table gets so big that performance may become an issue (and it will have to be very big), then you can start thinking about de-normalizing for speed.
For a restaurant, I cannot imagine the order and food item tables getting anywhere near big enough to warrant de-normalizing.