Récupération des requêtes SQL antérieures dans SQL Server Management Studio (SSMS)
Contrairement à certains systèmes de bases de données (MySQL, PostgreSQL), SQL Server n'enregistre pas automatiquement l'historique des requêtes. Par conséquent, la récupération des requêtes passées nécessite des approches différentes.
Vérification des plans d'exécution mis en cache
Si l'instance SQL Server n'a pas été redémarrée, le plan d'exécution de la requête peut rester en cache. Utilisez cette requête pour le rechercher :
SELECT t.[text] FROM sys.dm_exec_cached_plans AS p CROSS APPLY sys.dm_exec_sql_text(p.plan_handle) AS t WHERE t.[text] LIKE N'%something unique about your query%';
N'oubliez pas de remplacer '%something unique about your query%'
par une partie distinctive de votre requête.
Examen des fichiers de récupération SSMS
Après un crash inattendu de SSMS, vous pourriez trouver des fichiers de récupération dans ce répertoire :
<code>C:\Users\<your_username>\Documents\SQL Server Management Studio\Backup Files\</code>
Outils tiers et traçage côté serveur
Si les méthodes ci-dessus échouent, envisagez ces options :
Statistiques de requête améliorées
Pour afficher les requêtes mises en cache triées selon leur dernière heure d'exécution, utilisez cette requête améliorée :
SELECT t.[text], s.last_execution_time FROM sys.dm_exec_cached_plans AS p INNER JOIN sys.dm_exec_query_stats AS s ON p.plan_handle = s.plan_handle CROSS APPLY sys.dm_exec_sql_text(p.plan_handle) AS t WHERE t.[text] LIKE N'%something unique about your query%' ORDER BY s.last_execution_time DESC;
Cela fournit une vue plus organisée de l'activité de requête récente.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!