the content is from the link...
http://thehobt.blogspot.com/2008/12/recovering-deleted-data-in-sql-server.html[
^]
Backup and restore the transaction log using the STOPAT clause
If your database is set to use the Full Recovery Model, you may have a backup and restore option, even if you didn’t take a backup prior to the data modification. In order to do this:
1.Backup the tail of the transaction log using normal BACKUP LOG syntax, and specifying WITH NORECOVERY. For further detail see Tail-Log Backups on MSDN.
2.Restore your most recent full backup, making sure to specify NORECOVERY.
3.Restore the most recent differential backup, also specifying NORECOVERY.
4.Restore each transaction log backup taken since the last full or differential backup. For the final log backup, use the STOPAT clause to stop the restore immediately prior to the data modification. Before you access the database, you need to perform recovery, so you can either do it as part of this restore, or as a separate operation. For more information, have a look at Recovering to a Specific Point in Time on MSDN.
This will, of course, wipe out any activity which took place after the time/LSN/mark specified in the STOPAT clause.
Use a log explorer, or similar recovery tool to generate undo scripts
A number of vendors offer tools which allow you to explore the transaction log and generate undo scripts to roll back data modifications. I have had occasion to use any of these utilities myself, however the most commonly recommended utilities are RedGate’s SQL Log Rescue and ApexSQL’s ApexSQL Log. These aren’t plugs – as I said, I haven’t used either of them, so please don’t complain if you do and they don’t work out for you.