Is it possible (or good practice) to register data upon Deletion of a record? What would be a better solution? The problem is the following.

A company has one or more representatives (a person who speaks on behalf of the company).

When a representative is deleted, it's desired to keep it in an list called "Last representative". So if the company has no representatives, one can look at that list and see what were the past representatives.

Is this possible? Or, is this a good solution/practice? What would be a better solution?

Thanks
A common practice is to have a status column that indicates whether or not the representative is active. Deleting data that you may wish to analyze in the future isn't a good idea. Instead, you could do something like this:

representativeID      status     statusDate
-------------------------------------------
1                     inactive   2014-03-20
2                     inactive   2014-04-02
3                     active     2014-04-10


The statusDate column could be updated by a trigger. It would give you the date of the last status change. In order to look at past representatives, you would simply write a query that filtered the records by inactive statuses. 

/** MySQL example - 10 most recent inactive represenatives **/
select representativeID
from representatives
where status = 'inactive'
order by statusDate desc
limit 0,10