Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Recupera dati aggiornati - SQL Server 2005

Ciao AngelIII, il server SQL mantiene il registro per ogni transazione. Quindi puoi recuperare anche i dati modificati dal registro senza backup.

Select [PAGE ID],[Slot ID],[AllocUnitId],[Transaction ID] ,[RowLog Contents 0]
, [RowLog Contents 1],[RowLog Contents 3],[RowLog Contents 4] ,[Log Record]
FROM    sys.fn_dblog(NULL, NULL)   
WHERE AllocUnitId IN 
(Select [Allocation_unit_id] from sys.allocation_units allocunits 
INNER JOIN sys.partitions partitions ON (allocunits.type IN (1, 3)   
AND partitions.hobt_id = allocunits.container_id) 
OR (allocunits.type = 2 AND partitions.partition_id = allocunits.container_id)   
Where object_id=object_ID('' + 'dbo.student' + '')) 
AND Operation in ('LOP_MODIFY_ROW','LOP_MODIFY_COLUMNS')  
And [Context] IN   ('LCX_HEAP','LCX_CLUSTERED') 

Ecco l'articolo, che spiega passo dopo passo, come farlo. http://raresql.com/2012/02/01/how-to-recover-modified-records-from-sql-server-part-1/