How can I maintain old information after an update?
You create an extra table with customer ID and all other fields that will possibly change over the time. 

In the orders table, you link to the id of this new table, not to the costumers tables. 

customers(customer_id, first_name, last_name...)
customer_info(id, customer_id, address, other field)
orders(id, customer_info_id, order_date, ...etc)