Similarly, the order lines don’t contain product names, but rather foreign keys which point to a product table
Well, the product name could be the foreign key. Or it could not be. If you have 2 different products with the same name (or 1 person with 2 different names) then you have some complexity. Doesn't matter what kind of database you're using.
Comments
Yeah, total straw man. For e.g.:
Similarly, the order lines don’t contain product names, but rather foreign keys which point to a product table
Well, the product name could be the foreign key. Or it could not be. If you have 2 different products with the same name (or 1 person with 2 different names) then you have some complexity. Doesn't matter what kind of database you're using.