Design question: join data
The typical solution in OLTP is to copy the relevant attributes onto the Order or Order Details table.  Eg handle it like the product price, which is always copied onto the Order.  So the name of a Product at the time of the Order is modeled as an attribute of the Order, not through the relationship with the Product table.

In Data Warehousing, the typical solution is to maintain a Slowly-Changing Dimension for the Product, so each SqlesFact is linked with a historically-accurate version of the Product Dimension.