I am designing a database where i have an Orders table. (obviously this is an online shop)
The Orders table holds an addressId as well, which points to an Saved Addresses table(the saved addresses of a customer). However the customer can edit his Saved Addresses, which means that if he does that the address in the Order will change as well, which is wrong since the Order was shipped to the old address(before editing).
I was wondering what is the norm in the community to handle such things?
Do i hard-record? (not point to an address but instead plainly write the address details to an order)
Do i prohibit the customer from editing/deleting Saved Addresses? (this looks like bad UX and i have the feeling that the customer is allowed by law to delete personal information from my database)
What is the ''best practise'' here?