title: How to keep track of changes to data in a table?
body: <p>I have a simple question.  How can I keep track of changes to a row in a SQL Server table?  Here's an example of what I want.</p>
  
  <p><strong>Table</strong>: Users</p>
  
  <p><strong>Columns</strong>: Name | Address | Username | UserType</p>
  
  <p><strong>Row 1</strong>: Christopher | 123 Fake Street | Lover1234 | 1</p>
  
  <p>How can I keep track of what time the user changes "Christopher" to "Robert" or if they change "123 Fake Street" to "124 Fake Street".  I need to know the time of the change, as well as the old value that was changed.  I would also like to be able to track whether the UserType changes (which is a foreign key), so I need to know how to track foreign key changes.</p>
  
  <p>This could occur in multiple different tables and I would like to keep track of multiple different tables.</p>