È possibile visualizzare le delete
dichiarazioni che si sono verificate di recente nel registro delle transazioni?
È possibile visualizzare le delete
dichiarazioni che si sono verificate di recente nel registro delle transazioni?
Risposte:
non troverai gli script esatti che sono stati eseguiti su sql. (nel registro delle transazioni)
Un registro delle transazioni è un file che contiene informazioni relative a tutte le modifiche apportate al database. Ciò include modifiche ai dati (transazioni), modifiche al database ed eventi di backup / ripristino.
Lo scopo principale del registro delle transazioni è fornire un metodo per poter ripristinare un database in un punto temporale quando necessario. Ciò può includere il rollback delle transazioni a un determinato momento o il roll forward delle transazioni da un ripristino di backup completo.
per saperne di più sul registro delle transazioni http://www.sqlservercentral.com/articles/Design+and+Theory/63350/
ecco uno script per mostrare le query di eliminazione eseguite di recente
SELECT deqs.last_execution_time AS [Time], dest.TEXT AS [Query]
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
where dest.TEXT like '%Delete%from%'
ORDER BY deqs.last_execution_time DESC
FROM
è una parola chiave facoltativa in DELETE
un'istruzione, quindi non la includerei nel predicato corrispondente qui.
delete
e DELETE
, ecc. Potresti voler rendere la clausola where senza distinzione tra maiuscole e minuscole, ad esempio: WHERE dest.text LIKE '%DELETE %' COLLATE Latin1_General_CI_AS
È possibile visualizzare le singole righe che sono state eliminate cercando le operazioni LOP_DELETE_ROWS ancora nel registro:
select * from fn_dblog(NULL, NULL)
where Operation = 'LOP_DELETE_ROWS'
Se il registro è stato riciclato (nel modello di recupero semplice) o troncato dal backup (nel modello di recupero completo o in blocco), sarà possibile vedere solo le operazioni del registro ancora disponibili nel registro.
La comprensione delle operazioni di registro è piuttosto complessa, è necessario essere consapevoli di cose come annullare o compensare le operazioni per dare un senso ad alcuni schemi di registro che si possono incontrare, ma i DELETE impegnati direttamente sono abbastanza facili da comprendere.