web-dev-qa-db-fra.com

Afficher les instructions de suppression dans le journal des transactions

Est-il possible d'afficher les instructions delete qui se sont récemment produites dans le journal des transactions?

12
Neil Knight

vous ne trouverez pas les scripts exacts qui ont été exécutés sur sql. (dans le journal des transactions)

Un journal des transactions est un fichier qui contient des informations concernant chaque modification apportée à la base de données. Cela inclut les modifications de données (transactions), les modifications de base de données et les événements de sauvegarde/restauration.

Le principal objectif du journal des transactions est de fournir une méthode permettant de restaurer une base de données à un point dans le temps si nécessaire. Cela peut inclure la restauration de transactions à un certain moment ou la restauration de transactions à partir d'une restauration de sauvegarde complète.

pour en savoir plus sur le journal des transactions http://www.sqlservercentral.com/articles/Design+and+Theory/63350/

voici un script pour vous montrer les dernières requêtes de suppression exécutées

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
11
AmmarR

Vous pouvez afficher les lignes individuelles qui ont été supprimées en recherchant les opérations LOP_DELETE_ROWS toujours dans le journal:

select * from fn_dblog(NULL, NULL) 
where Operation = 'LOP_DELETE_ROWS'

Si le journal a été recyclé (dans le modèle de récupération simple) ou tronqué par sauvegarde (dans le modèle de récupération complète ou en bloc), vous ne pourrez voir que les opérations de journal toujours disponibles dans le journal.

La compréhension des opérations de journalisation est assez complexe, vous devez être conscient de choses comme les opérations d'annulation ou de compensation pour donner un sens à certains modèles de journal que vous pouvez rencontrer, mais les suppressions engagées directes sont assez faciles à comprendre.

11
Remus Rusanu