For changes, you can add a datetime column to a table called "LastModified" or something like that and write the current date / time to it every time you record.
Alternatively, if you need to know when a record was deleted, you can write a trigger that captures inserts / updates / deletes in the corresponding table and writes the timestamp value to another table along with identifying information about this record.
The best way is to implement “soft deletions” when the record is marked with some status (for example, the “IsDeleted” column), which can be turned over and subsequently ignored by other code in the application when reading from the table.
source share