Вы спрашиваете о том, что известно как «объектно-реляционное отображение» (ORM). Я думаю, что лучший способ узнать то, что вы хотите изучить, это взглянуть на некоторые хорошо зарекомендовавшие себя библиотеки ORM [такие как ActiveRecord (Ruby) или Hibernate (Java)] и посмотреть, как они это делают.
Имея это в виду:
a) Если приложение требует этого, должен быть доступ к массиву (или аналогичному перечислению) объектов, представляющих заказы пользователей через объект пользователя. Однако обычно это лучше всего включать в себя ленивую загрузку (то есть заказы обычно не будут извлекаться из базы данных, когда пользователь извлекает из базы данных .... заказы будут впоследствии запрашиваться, когда приложению необходим доступ к ним). После того, как объекты загружены лениво, они могут быть кэшированы ORM, чтобы исключить необходимость в дальнейших запросах на это определение.
b) Если только по соображениям производительности вы не тянете только определенные столбцы, вы обычно тянете все столбцы при получении заказа. Таким образом, он будет включать в себя идентификатор пользователя.
в) Ответ также относится и к этому.