Think about tracking the old data whenever it is changed to new one??? Suppose you want to track this information in single table and display in the tab against any CRM entities. This can be achieved using sql trigger functionality.
For this first you may need to create two magic tables (i.e. inserted & deleted)
to track the old and new values.
Then you can simply write an update trigger for the entity for which you want to maintain the old data.