Hey, Zero_cool,
Automatically maintaining row states when updating data would be very hard (impossible?) for use to do reliably, because we have no good way of knowing that the data from the update matches the rows from the original data with new rows at the end. There could be an ORDER BY in effect, for example, that causes new rows to be mixed in with old rows.
However, if you know for sure in your scenario that updated rows will match with new rows at the end, you could write a script that walks the rows and captures the row state of each row, and then does the database update, and then re-applies the row states.
HTH,
Eric