The way to protect against a hacker wiping our your database is to perform FULL database backups and transaction log backups and encrypting the backup files.
A full backup performed every day - and transaction log backups every 5 minutes would allow you to recover the data up to the point in time where the hacker wiped out the database. Encrypting the backup files prevents the hacker from messing around with those files - and copying those files off to another location decreases the risks of something happening where you lose those files.
For example - let's say a hacking wipes out all data in your database at 9:16am. Once you have made sure that hacker can no longer access the system, you can then perform these steps:
- Perform a tail-log backup
- restore to your latest full backup with no recovery
- restore each transaction log backup up to 9:15a with no recovery
- restore the tail-log backup with the STOP AT defined as a time right before the hacker deleted the data
- recover the database
You may end up losing some data - depends on if you can identify exactly when the commands to delete your data were executed. And since you have multiple tables those commands could be across time so you may end up losing several hours.
The only way to prevent that from happening at all is to make sure you secure the system. Unfortunately, that is a lot of work - but it needs to happen.