I'd like to handle entries for reporting purposes even if the entries are deleted. 

For example (simple scenario), I have two tables:

1. Administrators
2. AdministratorActions

If administrator do something, it will be saved into the `AdministratorActions` table. It should be possible to delete some administrators (entries) from `Administrators` table.

But when we delete (real deletion) some admins from the table, we aren't able to track the actions in `AdministratorActions` back to a deleted name.

The simplest solution for that is: just add a column `IsDeleted` in the `Administrators` table and don't actually delete the entries. But I think, that's a really really ugly DB design.

Are there any other good solutions for doing that a nice way?

The background is: we have to report all the done actions and should be able to track the actions back to the initiator (Administrator name of table `Administrators`.

I'm very grateful for your help.